Home work for Session 4 is on the class page To pay the tuition - https://online.portnov.net/product/software-quality-assurance/ Registration - http://online.portnov.net/register/ (ONLY IF YOU PAY) Your FINAL class page - https://online.portnov.net/su6/ - login needed Previous class - https://online.portnov.net/su5/ - login needed =========================================================================================== 3 things to have in place to get/keep a job: - Know how to test == able to write test cases - bug reporting - Projects (what, how, challenges, examples) BUG - mismatch between actual and expected behaviour/appearance of the application ======================== GIVE ME TEST CASES ====================== - How would you test? - Give me test cases for testing ... NO REQUIREMENTS - NO TESTING LOGIN/PASSWORD 1. Requirements (assumptions) * the application/feature MUST be in testable condition (it passed the build acceptance test) * for the purpose of writing test cases, lets have some assumptions of reqs - valid login and valid password combination lets user in - any other combination will be rejected - Password field displays input in bullets - "Cut" menu item on "Password" field is disabled - "Copy" menu item on "Password" field is disabled 2. PRE-CONDITIONS: there is an existing account to use for test execution 3. TEST DATA: - mikhail portnov12345 - invalid portnov12345 => portnow12345 4. TEST CASES: Summary Title ID.....Description.................................Instruction....................Expected result Actual result Pass/Fail 1. Valid login/valid password.................mikhail/portnov12345................user logged in 2. Valid login/invalid password...............mikhail/portnow12345................login rejected 3. Masking password...........................type 1234567........................shown in bullets 4. "Copy" menu item on Password..................NA...............................disabled 5. "Cut" menu item on Password...................NA...............................disabled ---------------- ZIP Code field: Reqs: - 5 characters - all digits - existing - required field Test cases: ID Purpose/Title Instruction Expected Result Positive/Negative 1. 5 digits, existing 94085 Accepted Positive - 1 happy path 2. 6 digits 940851 94085 accepted Negative - 1 3. 4 digits 9408 error msg Negative - 2 4. Non-existent 00000 Rejected Negative - 3 5. Non-digit: Type Letter 94O85 Rejected Negative - 4 6. Non-digit: Type Sp. Char 94@85 Rejected Negative - 5 7. Non-digit: Paste Letter 94O85 Rejected Negative - 6 8. Non-digit: Paste Sp. Char 94@85 Rejected Negative - 7 9. Required field empty field req field msg Negative - 8 10. 6 digits pasted 940851 Rejected Negative - 9 Prioritizing is important Happy Path - created intentionally not to fail Developers write the code Devops compiles the build (version of the software application) Build is tested for "Build acceptance" If passed the build is given to QA Normally QA will start with regression testing (nothing is broken out of what used to work before) ========================================================================================== Why do companies need QAs if developers test software anyway? - for negative and regression testing