80 likes | 349 Views
Testing Project. Course Software Testing & Verification 2013/14 Wishnu Prasetya. Goals : applying these in practice. Unit testing (S1) Testability (S1) Class invariants, ADT-based testing (S1) Black/gray box testing (S2) Model based testing (S2) System testing (S2)
E N D
Testing Project Course Software Testing & Verification 2013/14 WishnuPrasetya
Goals : applying these in practice • Unit testing (S1) • Testability (S1) • Class invariants, ADT-based testing (S1) • Black/gray box testing (S2) • Model based testing (S2) • System testing (S2) • Automating your tests (S2)
Setup • We’ll simulate a small software development project. Selected focus: • implementation, unit testing, and system testing • other stages of SD are ignored • Target to develop, one of these: • Breakout game • GUI-based address book • Work in pairs
Stage 1 • develop a full version of the application, satisfying the requirement set of the Project Document. • Unit testing • refactor to improve testability • testing complex classes class inv., ADT • prepare for Stage-2 : • logging user events • dealing with non-determinism • 4 weeks time, demonstration at the end.
Breakout • Altered game rules to make it more challenging for testing. See Project Doc. • You can implement in any language that you want. I recommend Java or C#. • Other choices ... risky, because : • JavaScript, Haskell, ... code coverage support? • you’ll need support for intercepting game events.
Address Book • GUI-based • The application maintains multiple address books. Each is just a set of pairs (name,emailadr). • You have to check that each emailadr is valid, which involves a quite extensive set of rules. Examples:C.A.R.Hoare@logic.com Hoaref1+2=3g@logic.com tony.”tony@home.org”.hoare@logic.com ”wierd: tony@home.org”@logic.comHoare.logic.com C..Hoare@logic.com Hoare@home@logic.com not • As in Breakout, you can implement in any language you want; with the same remark too.
BO vs AB, and Stage 2 • GameTech students are recommended to choose BO. • BO testability • AB complicated logic • We may proceed differently in Stage-2. • In Stage-2, in principle we proceed with system testing; but if unit testing is felt to be too inferior, we may decide to also implement a stronger coverage criterion in Stage-2.