SMART Professional™ Agile Generalist
- Small group
- Free cancellation
- Duration: 2 Days
Rated 5 out of 5282 Reviews
From CHF 1900
Unit testing is the testing of the smallest testable parts of the application code (called unit), such as modules, functions or code fragments. Unit testing is often performed in an automated process because frequent unit testing can quickly identify problems or code conflicts.
Acceptance tests check the acceptance of the results against the acceptance criteria of the user story (business requirements).
These tests could be to check the result of a specific requirement, a specification, or contract requirements.
Exploratory testing is in addition to the 'scripted' testing (e.g., unit testing). In exploratory testing, tester explores the system on the fly to find issues and unexpected behavior in the system.
Usability testing is a technique to evaluate the user interaction with system under realistic conditions or controlled settings. The purpose of usability testing is to find out how well users respond to the system? How easy is it to use the system? What improvements are needed in terms of usability?
Continuous Integration (CI) is automating the integration of new or changed codes into the code repository. Continuous integration helps identify conflicts or incompatible code as early as possible and fix them as they occur. Code repositories allow developers to roll back code to previous versions.
Continuous Integration involves:
Source code control system – version control
Build tools – build tools to compile code
Testing tools – unit tests to ensure functionality works as expected
Schedulers or triggers – initiates builds on a schedule or based on conditions
Notifications – emails or instant messages reporting build results
In Test-Driven Development, the tests are written before the code is developed.
The developer goes through the Red-Green-refactor (clean) stages until the code is finalized:
Red – The written tests initially fail as the code is not written or is incomplete.
Green – The code was written and passed the tests.
Refactor – The developer works on cleaning up and refactoring the working code.
In acceptance test driven development (ATDD), the focus of the tests are on business requirements and the desired behavior from the system. The tests are written based the acceptance criteria of user stories that the developer team transforms them into acceptance tests that can be stored in the testing tools. The tests fail initially because they are written before the desired software functionalities are developed and work.
Behavior-Driven Development (BDD) is an agile testing technique that aims to validate scenarios and behaviors of the system. It follows the Gherkin language that uses the format of "Given, When, Then" keywords to describe desired system behavior – what should happen when in the application.
Pair programming is a core practice of the XP framework that allows team members to learn from each other, increase productivity, and find bugs by writing, directing, and reviewing code in pairs. The driver writes the code while another person, the navigator (aka. observer), reviews each line of code entered. The pairs (two members) change roles (i.e., driver and navigator) frequently. The navigator looks at major problems and errors and makes notes and share ideas on possible next steps or obstacles.
Pair Programming is best done when team members are in the same location.