... |
... |
@@ -31,7 +31,10 @@ |
31 |
31 |
(% style="text-align: justify;" %) |
32 |
32 |
Every functionality you expect the software to provide at any moment. You should test: |
33 |
33 |
|
34 |
|
-* **Use Cases** |
35 |
|
-** Use cases defined in project requirements |
36 |
|
-** Lower-level use cases derived from the high-level project use cases. For example, expected behavior of functions, classes, modules, and components that users of the software do not see. |
37 |
|
-* **Border cases** that could theoretically always occur, such as maximum/minimum values, nulls, invalid input, nulls, negative numbers, empty lists, values with special meaning, exceptions, etc. |
|
34 |
+* **Functional Requirements** |
|
35 |
+** Use cases that are defined in project requirements. Tests are actually specification translated into code. |
|
36 |
+** Lower-level use cases derived from high-level project use cases are not directly visible to end users, but form the backbone of software functionality. This includes the expected behavior of the underlying functions, classes, modules, and components. |
|
37 |
+* **Non-Functional Requirements** |
|
38 |
+** **Border cases** that could theoretically occur, such as maximum/minimum values, nulls, invalid input, zeroes, negative numbers, empty lists, values with special meaning, exceptions, etc. |
|
39 |
+** **Performance requirements** |
|
40 |
+** **Security requirements** |