354 lines
13 KiB
Markdown
354 lines
13 KiB
Markdown
|
# Calculator Manual Tests
|
|||
|
These manual tests are run before every release of the Calculator app.
|
|||
|
|
|||
|
## Smoke Tests
|
|||
|
|
|||
|
### Calculators
|
|||
|
|
|||
|
### Math in Standard Calculator
|
|||
|
|
|||
|
**Test 1**
|
|||
|
Steps:
|
|||
|
1. From the Standard Calculator page, input “3”, “+”, “3”, “Enter” on the keyboard
|
|||
|
Expected: “6” shows up in the display
|
|||
|
2. Input “4”, “-“, “2”, “=” using the in-app buttons
|
|||
|
*Expected: “2” shows up in the display*
|
|||
|
|
|||
|
**Test 2**
|
|||
|
Steps:
|
|||
|
1. From the Standard Calculator page, input “3”, “+”, “3”, “Enter” on the keyboard
|
|||
|
2. Navigate to the History pane, and verify that “3 + 3 = 6” shows up in the pane
|
|||
|
3. Input “MS” using the in-app buttons
|
|||
|
4. Navigate to the Memory pane
|
|||
|
*Expected: “6” shows up in the pane*
|
|||
|
|
|||
|
### Math in Scientific Calculator
|
|||
|
|
|||
|
**Test 1**
|
|||
|
Steps:
|
|||
|
1. From the Scientific Calculator page, input “3”, “^”, “3”, “Enter” on the keyboard
|
|||
|
*Expected: “27” shows up in the display*
|
|||
|
|
|||
|
**Test 2**
|
|||
|
Steps:
|
|||
|
1. Input “5”, “n!“, “=” using the in-app buttons
|
|||
|
*Expected: “120” shows up in the display*
|
|||
|
|
|||
|
### Math in Programmer Calculator
|
|||
|
|
|||
|
**Test 1**
|
|||
|
Steps:
|
|||
|
1. From the Programmer Calculator page, input “1”, “&”, “0”, “Enter” on the keyboard
|
|||
|
*Expected: “0” shows up in the display*
|
|||
|
|
|||
|
**Test 2**
|
|||
|
Steps:
|
|||
|
1. Input “15” using the in-app buttons and select “HEX”
|
|||
|
*Expected: “F” shows up in the display and the letters A-F show up as in-app buttons*
|
|||
|
|
|||
|
### Converters
|
|||
|
|
|||
|
**Converter Usage**
|
|||
|
Steps:
|
|||
|
1. From the Length Converter page, select “kilometers” as the unit type in the input field and input “5” using the keyboard
|
|||
|
2. Select “miles” as the unit type in the output field
|
|||
|
*Expected: The output starts with is “3.106856”*
|
|||
|
|
|||
|
|
|||
|
## Basic Verification Tests
|
|||
|
|
|||
|
**Launch App Test**
|
|||
|
Steps:
|
|||
|
1. Press the Windows key.
|
|||
|
2. Navigate to "all apps".
|
|||
|
3. Look for "Calculator".
|
|||
|
4. Click to launch the "Calculator" app.
|
|||
|
*Expected: The calculator app launches gracefully.*
|
|||
|
|
|||
|
|
|||
|
**All Calculators Test: Verify All Numbers & Input Methods**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Standard" Calculator.
|
|||
|
3. Mouse Input
|
|||
|
*Expected: All numbers work via mouse click.*
|
|||
|
4. Keyboard Input:
|
|||
|
*Expected: All numbers work via number pad.*
|
|||
|
5. Navigate to "Scientific" Calculator and Repeat Steps 3-5
|
|||
|
*Expected: Steps 3-5 pass in Scientific mode*
|
|||
|
6. Navigate to "Programmer" Calculator and Repeat Steps 3-5
|
|||
|
*Expected: Steps 3-5 pass in Programmer mode*
|
|||
|
|
|||
|
|
|||
|
**All Calculators Test: Verify Basic Arithmetic Functions**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Standard" Calculator.
|
|||
|
3. Using the Number Pad and Mouse perform the following arithmetic functions and verify the result.
|
|||
|
a. (+) Addition
|
|||
|
b. (-) Subtraction
|
|||
|
c. (x) Multiplication
|
|||
|
d. (÷) Division
|
|||
|
e. (1/x) Reciprocal
|
|||
|
f. (√) Square Root
|
|||
|
g. (x²) Squared
|
|||
|
h. (x³) Cubed
|
|||
|
i. (%) Percent
|
|||
|
j. (±) Positive / Negative
|
|||
|
k. (=) Equals
|
|||
|
l. Delete Button (flag with x in it)
|
|||
|
m. [CE] Clear
|
|||
|
n. [C] Global Clear
|
|||
|
o. (.) Decimal
|
|||
|
4. Navigate to "Scientific" Calculator and Repeat Steps 3-19.
|
|||
|
5. Navigate to "Programmer" Calculator and Repeat Steps 3-18 (No Decimal in Programming Calc).
|
|||
|
|
|||
|
|
|||
|
**Scientific Calculator Test: Verify advanced arithmetic functions**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Scientific" Calculator.
|
|||
|
3. Using the Number Pad and Mouse perform the following arithmetic functions and verify the result.
|
|||
|
a. (xʸ) Xth Power of Y
|
|||
|
b. (y√x) Y Root of X
|
|||
|
c. (10ˣ) 10 Power of X
|
|||
|
d. (ex) E Power of X
|
|||
|
e. (π) Pi
|
|||
|
f. (n!) Factorial
|
|||
|
g. (Ln) Natural Logarithm
|
|||
|
h. (Log) Logarithm
|
|||
|
i. (Exp) Exponential
|
|||
|
j. (dms) Degrees, Minutes, Seconds
|
|||
|
k. (deg) Degrees
|
|||
|
l. (Mod) Modulo
|
|||
|
m. “( )" Parenthesis
|
|||
|
|
|||
|
|
|||
|
**All Calulators Test: Verify memory functions**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Standard" Calculator.
|
|||
|
3. Perform a calculation and press the MS button.
|
|||
|
4. If small scale, Select the (M) with the drop down arrow
|
|||
|
*Expected: Calculation from previous step is present.*
|
|||
|
5. Click the (M+) Add to Memory.
|
|||
|
*Expected: Previous calculation is added to itself.*
|
|||
|
6. Click the (M-) Subtract from Memory.
|
|||
|
*Expected: Previous calculation is subtracted from the base calculation.*
|
|||
|
7. Click the (MR) Memory Recall.
|
|||
|
*Expected: Previous calculation is made primary (This is not available in the Programmer mode).*
|
|||
|
8. Check the MC button.
|
|||
|
*Expected: The stored information is cleared.*
|
|||
|
9. Navigate to "Scientific" Calculator and Repeat Steps 3-8.
|
|||
|
*Expected: All in "Scientific" mode.*
|
|||
|
10. Navigate to "Programmer" Calculator and Repeat Steps 3-8.
|
|||
|
*Expected: All in "Programmer" mode.*
|
|||
|
|
|||
|
|
|||
|
**Scientific Calculator Test: Verify trigonometric functions**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Scientific" Calculator.
|
|||
|
3. Using the Number Pad and Mouse perform the following trigonometric functions and verify the result.
|
|||
|
3. Sine (sin)
|
|||
|
4. Cosine (cos)
|
|||
|
5. Tangent (tan)
|
|||
|
6. Inverse Sine (sin-1)
|
|||
|
7. Inverse Cosine (cos-1)
|
|||
|
8. Inverse Tangent (tan-1) Inverse Tangent:
|
|||
|
9. Press (HYP) for Hyperbolic trig functions:
|
|||
|
*Expected: Trig function buttons show hyperbolic trig functions.*
|
|||
|
10. Hyperbolic Sine (sinh)
|
|||
|
11. Hyperbolic Tangent (tanh)
|
|||
|
12. Hyperbolic Cosine (cosh)
|
|||
|
13. Inverse Hyperbolic Sine (sinh-1)
|
|||
|
14. Inverse Hyperbolic Tangent (tanh-1)
|
|||
|
15. Inverse Hyperbolic Cosine (cosh-1)
|
|||
|
|
|||
|
|
|||
|
**Programmer Calculator Test: Verify logical functions**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app
|
|||
|
2. Navigate to "Programmer" Calculator.
|
|||
|
3. Using the Number Pad and Mouse perform the following trigonometric functions and verify the result.
|
|||
|
4. Rotate Left (RoL) Logical Operator:
|
|||
|
01011001 rol 3 = 11001010.
|
|||
|
5. Rotate Right (RoR) Logical Operator:
|
|||
|
01011001 RoR 3 = 00101011.
|
|||
|
6. (Lsh) Logical Operator:
|
|||
|
(10 multiplied by 2 three times)
|
|||
|
10 Lsh 3 = gives 80.
|
|||
|
10.345 Lsh 3 = also gives 80.
|
|||
|
7. (Rsh) Logical Operator:
|
|||
|
(16 divided by 2 twice)
|
|||
|
16 Rsh 2 = gives 4.
|
|||
|
16.999 Rsh 2 = also gives 4.
|
|||
|
7. (Or) Logical Operator
|
|||
|
101 OR 110 = gives 111.
|
|||
|
9. Exclusive Or (Xor) Logical Operator:
|
|||
|
101 XOR 110 = gives 11.
|
|||
|
9. (Not) Logical Operator
|
|||
|
NOT 1001100111001001 =
|
|||
|
0110011000110110.
|
|||
|
10. (And) Logical Operator
|
|||
|
101 AND 110 = gives 100.
|
|||
|
11. (Mod) Logical Operator
|
|||
|
Remainder of integer division (Modulo x)
|
|||
|
12. "( )" Parenthesis
|
|||
|
|
|||
|
|
|||
|
**All Calculators and Converters Test: Verify scaling functions and languages**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. For All Modes: While scaling in both directions to capacity
|
|||
|
*Expected: Elements like Memory and History are shifted or integrated appropriately.*
|
|||
|
3. In Any Mode: While at the Smallest scale, Select the Menu Button
|
|||
|
*Expected: The menu items are scrollable with nothing overlapping.*
|
|||
|
4. While in the Menu: Check the About Page
|
|||
|
*Expected: Everything in the about page fits into its window*
|
|||
|
5. For Scientific Mode: At a Larger Scale
|
|||
|
*Expected: All buttons are present and the up arrow is grayed out.*
|
|||
|
6. For Scientific Mode: At a Smaller Scale
|
|||
|
*Expected: All buttons are present and the up arrow is able to be toggled.*
|
|||
|
7. For Programmer Mode: At a Any Scale
|
|||
|
*Expected: All buttons are present and the up arrow is able to be toggled.*
|
|||
|
8. For Converter Mode: While Scaling
|
|||
|
*Expected: The number pad and input areas move around each other gracefully.*
|
|||
|
9. Changing Language: Open Settings app > Time & language > Region & language > Add a language > Select a Right to Left (RTL) language such as Hebrew > Install the associated files> Set it to the system default.
|
|||
|
10. Set the system number format preference: Open a Run dialog (WIN + R) > type ‘intl.cpl’ > Enter > In the format dropdown list > Select Hebrew > Apply.
|
|||
|
11. Initiating the change: Package has completed installing > Sign out > Sign in. (This change to the app may also require a reinstallation of the build)
|
|||
|
12. Repeat Steps 2-6 again in a (RTL) language.
|
|||
|
*Expected: No elements fall out of intended boundaries.*
|
|||
|
|
|||
|
|
|||
|
**All Calculators Test: Verify toggling functions**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. For Standard & Scientific Modes: While in the Smallest scale, verify that the History Icon brings up the history panel gracefully and is displayed appropriately.
|
|||
|
For Scientific Mode: At a Smaller Scale
|
|||
|
Verify the following:
|
|||
|
3. Grad / Deg / Rad
|
|||
|
Perform a trig function
|
|||
|
*Expected: The answer to the function is in the selected grad/deg/rad. Repeat for each of the modes.*
|
|||
|
4. (Hyp) Hyperbolic
|
|||
|
*Expected: Sin toggles to Sinh, Cos toggles to Cosh, Tan toggles to Tanh.*
|
|||
|
5. (F-E key) Floating Point Notation & Scientific Notation.
|
|||
|
*Expected: Display toggles between floating point and Scientific notation.*
|
|||
|
For Programmer Mode
|
|||
|
Verify the following:
|
|||
|
6. "Bit Toggling Keypad":
|
|||
|
*Expected: In app keypad changes to represent Bits (1s and 0s).*
|
|||
|
7. "QWORD / DWORD / WORD / BYTE":
|
|||
|
*Expected: Toggles as expected.*
|
|||
|
8. "Hex" Hexadecimal:
|
|||
|
*Expected: A B C D E F become active and user can use them. A maximum of 16 characters can be entered.*
|
|||
|
9. "Dec" Decimal:
|
|||
|
*Expected: A B C D E F are inactive. A maximum of 19 characters can be entered.*
|
|||
|
10. "Oct" Octal:
|
|||
|
*Expected: A B C D E F 8 9 are inactive. A maximum of 22 characters can be entered.*
|
|||
|
11. "Bin" Binary:
|
|||
|
*Expected: A B C D E F 2 3 4 5 6 7 8 9 are inactive. A maximum of 64 characters can be entered.*
|
|||
|
|
|||
|
|
|||
|
**Date Calculation Test: Verify dates can be calculated.**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Date Calculation" Calculator.
|
|||
|
3. With "Difference between dates" Selected
|
|||
|
Change the various date input fields
|
|||
|
*Expected: From and To reflect dates input respectively.*
|
|||
|
5. With "Add or Subtract days" Selected
|
|||
|
Change the various date input fields
|
|||
|
*Expected: Verify changes made to both add and subtract reflect input respectively.*
|
|||
|
|
|||
|
|
|||
|
**Currency Converter Test: Verify conversion & updating current currency rates.**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
2. Navigate to "Currency Converter" Calculator.
|
|||
|
3. Select 2 Currency types from the dropdowns & enter a "1" into a conversion slot.
|
|||
|
*Expected: The currency is slotted properly and converted rate matches the ratio provided under the selected currency types.*
|
|||
|
4. Click "Updated"
|
|||
|
*Expected: Display matches PC's date and time.*
|
|||
|
5. After at least a minute: Select "Update rates" & Check "Updated" again:
|
|||
|
*Expected: The "Update Rates" button changes the date and time to match the computer's current date and time.*
|
|||
|
|
|||
|
|
|||
|
**All Calculators Test: Hotkeys: Verify Hot Key function.**
|
|||
|
Steps:
|
|||
|
1. Launch the "Calculator" app.
|
|||
|
For All Applicable Modes:
|
|||
|
Verify the following:
|
|||
|
2. Press **Alt +1** to Enter "Standard" mode
|
|||
|
*Expected: Move to "Standard" screen.*
|
|||
|
3. Press **Alt +2** to Enter "Scientific" mode
|
|||
|
*Expected: Move to "Scientific" screen.*
|
|||
|
4. Press **Alt +3** to Enter "Programmer" mode
|
|||
|
*Expected: Move to "Programming" screen.*
|
|||
|
5. Press **Alt +4** to Enter "Date Calculation" mode
|
|||
|
*Expected: Move to "Date Calculation" screen.*
|
|||
|
6. Press **Ctrl +M** to Store in Memory
|
|||
|
7. Press **Ctrl +P** to Add to Active Memory
|
|||
|
8. Press **Ctrl +Q** to Subtract form Active Memory
|
|||
|
9. Press **Ctrl +R** to Recall from Memory
|
|||
|
10. Press **Ctrl +L** to Clear from Memory
|
|||
|
11. Press **Delete** to Clear Current Input 'CE'
|
|||
|
12. Press **Esc** to Full Clear Input 'C'
|
|||
|
13. Press **F9** to Toggle '±'
|
|||
|
14. Press **R** to Select '1/x'
|
|||
|
15. Press **@** to Select '√'
|
|||
|
16. Press **Ctrl + H** to Toggle History Panel
|
|||
|
*Expected: Function when in small scale window.*
|
|||
|
17. Press **Up arrow** to Move up History Panel
|
|||
|
*Expected: Function when in small scale window.*
|
|||
|
18. Press **Down arrow** to Move Down History Panel
|
|||
|
*Expected: Function when in small scale window.*
|
|||
|
19. Press **Ctrl + Shift + D** to Clear History Panel
|
|||
|
*Expected: Function when in small scale window.*
|
|||
|
20. Press **Spacebar** to Repeat Last Input:
|
|||
|
Verify the following in Scientific Mode
|
|||
|
21. Press **F3** to Select 'DEG'
|
|||
|
22. Press **F4** to Select 'RAD'
|
|||
|
23. Press **F5** to Select 'GRAD'
|
|||
|
24. Press **Ctrl +G** to Select '10ˣ'
|
|||
|
25. Press **Ctrl +Y** to Select 'y√x'
|
|||
|
26. Press **Shift +O** to Select 'sin-1'
|
|||
|
27. Press **Shift + S** to Select 'cos-1'
|
|||
|
28. Press **Shift +T** to Select 'tan-1'
|
|||
|
29. Press **Ctrl +O** to Select 'Cosh'
|
|||
|
30. Press **Ctrl +S** to Select 'Sinh'
|
|||
|
31. Press **Ctrl +T** to Select 'Tanh'
|
|||
|
32. Press **D** to Select 'Mod'
|
|||
|
33. Press **L** to Select 'log'
|
|||
|
34. Press **M** to Select 'dms'
|
|||
|
35. Press **N** to Select 'ln'
|
|||
|
36. Press **Ctrl +N** to Select 'ex'
|
|||
|
37. Press **O** to Select 'Cos'
|
|||
|
38. Press **P** to Select 'π'
|
|||
|
39. Press **Q** to Select 'x²'
|
|||
|
40. Press **S** to Select 'Sin'
|
|||
|
41. Press **T** to Select 'Tan'
|
|||
|
42. Press **V** to Toggle 'F-E'
|
|||
|
43. Press **X** to Select 'Exp'
|
|||
|
44. Press **Y** or **^** to Select 'xʸ'
|
|||
|
45. Press **#** to Select 'x³'
|
|||
|
46. Press **!** to Select 'n!'
|
|||
|
Verify the following in Programmer Mode
|
|||
|
47. Press **F2** to Select 'DWORD'
|
|||
|
48. Press **F3** to Select 'WORD'
|
|||
|
49. Press **F4** to Select 'BYTE'
|
|||
|
50. Press **F5** to Select 'HEX'
|
|||
|
51. Press **F6** to Select 'DEC'
|
|||
|
52. Press **F7** to Select 'OCT'
|
|||
|
53. Press **F8** to Select 'BIN'
|
|||
|
54. Press **F12** to Select 'QWORD'
|
|||
|
55. Press **A-F** to Input in HEX
|
|||
|
56. Press **J** to Select 'RoL'
|
|||
|
57. Press **K** to Select 'RoR'
|
|||
|
58. Press **<** to Select 'Lsh'
|
|||
|
59. Press **>** to Select 'Rsh'
|
|||
|
60. Press **%** to Select 'Mod'
|
|||
|
61. Press ** | ** to Select 'Or'
|
|||
|
62. Press **~** to Select 'Not'
|
|||
|
63. Press **&** to Select 'And'
|