WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here.here These slides contain a lot of animations. For optimal results, watch in slideshow mode.
How long will they take to catch all fish? a)Less than 1 hour b)Around 1 hour c)About 100 hours d)Forever [Extra] 100 fish If 100 people trying to catch 100 piranha fish in a lake. On average, one person can catch one fish within 1 hour
[Extra] 100 fish
System testing SUT
System testing SUT
System testing SUT
Do you want maximum publicity for your mistakes? [Extra] who wants maximum publicity
Do you want maximum publicity for your mistakes?
Never too early to test: An Introduction to Early Developer Testing CS2103/T, Lecture 4, Part 2, [Sep 4, 2015]
UI MSLogic Storage History UI MSLogic Storage History
UI MSLogic Storage History UI MSLogic Storage History
UI MSLogic Storage History SUT Unit testing
UI MSLogic Storage History SUT Unit testing
UI MSLogic Storage History SUT Stub Test Driver Unit testing
UI MSLogic Storage History SUT== MSLogic Stub String retrieveFromDatabase (int key){ if(key==1) return “Item for key 1”; if(key==2) return “Item for key 2”; … Unit testing
UI MSLogic Storage History SUT== MSLogic Stub Test Driver String item = msLogic.getItem(1); if(!item.equals(“Item1”) print(“Case 1 failed”); … Unit testing
UI MSLogic Storage History SUT== MSLogic Stub Test Driver String item = msLogic.getItem(1); if(!item.equals(“Item1”) print(“Case 1 failed”); … Unit testing
String item = msLogic.getItem(1); if(!item.equals(“Item1”) print(“Case 1 failed”); … assertEquals(msLogic.getItem(1), “Item1”); JUnit (Java) Visual Studio Native Tests (C++)
UI MSLogic Storage History
UI MSLogic Storage History
UI MSLogic Storage History
UI MSLogic Storage History
UI MSLogic Storage History
UI MSLogic Storage History
SUT
Write a failing test Write code to pass test
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java Clementi, Eunos, 20 Eunos, Novena, 40 Clementi true Novena true Eunos true Changi false Write the java/c++/pseudo code for the above
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java
CityConnect.java CityConnectTest.java Note: more test cases required. Refactor as necessary.
Write a failing test Write code to pass test
100+ developers 300,000 Lines of Code
Automated tests
[extra] Mozilla patch policy 58
When the system test fails...
Must have automated developer tests!
Only system testing? NO It can save your career. Use automated test driver frameworks Can do in TDD fashion Must do developer testing
Should do this too Everyone should do some Use these Do in CE2, Optional in project