Knowledge

Fastest

Source đź“ť

233:
out of them. In this way the heaviest task is distributed across as many computers as possible. Since the calculation of an abstract test case from a test class is completely independent from each other, this architecture speeds up the entire process proportionally with respect to the number of
166:
Fastest users can prune subtrees or individual leaves of testing trees by issuing two commands. These commands will prune all the test classes in the subtree regardless of them being empty or not. The main purpose of these commands is to allow engineers to reduce the number of or to eliminate
188:
between these sets. Each leaf predicate is evaluated on each element of this Cartesian product until one satisfies the predicate (meaning that an abstract test case was found) or until it is exhausted (meaning that either the test class is
258:
are essential to the method. They are the tools that engineers must use to create the most discovering test cases possible. Then, the more sound testing tactics available to engineers the better.
193:
or the finite model is inadequate). In the last case, the user has the chance to assist the tool in finding the right finite model or to prune the test class because it is unsatisfiable.
846:
Cristiá, Maximiliano; Albertengo, Pablo; Rodríguez Monetti, Pablo (2010). "Pruning Testing Trees in the Test Template Framework by Detecting Mathematical Contradictions".
221:
application. The application can be installed in a number of computers each acting as client, a server or both. Users access the application through clients which send
96:(DNF). It is the only testing tactic applied by default (regardless of whether the user has added or not other testing tactics) and the first one to be applied. 144:
To prune a testing tree, Fastest analyzes the predicate of each leaf to determine if the predicate is a contradiction or not. Since this problem is
148:, the tool implements a best-effort algorithm that can be improved by users. The most important aspect of the algorithm is a library of so called 54: 795:
Cristiá, Maximiliano; Rodríguez Monetti, Pablo (2009). "Implementing and Applying the Stocks-Carrington Framework for Model-Based Testing".
102:(SP). The user can add, modify and delete standard partitions for any predefined Z mathematical operator by simply editing a text file. 265:
provided by the tool. This interface has methods to configure and apply testing tactics. The interface definition is the following:
829: 180:
by calculating a finite model for each leaf in a testing tree. Finite models are calculated by restricting the type of each
152:
each of which represents a family of contradictions. This library can be extended by users by simply editing a text file.
70: 230: 177: 78: 241:
each instance of Fastest is completely independent of each other. All the tasks are computed in the local computer.
181: 62: 868: 797:
Formal Methods and Software Engineering, 11th International Conference on Formal Engineering Methods, ICFEM 2009
255: 123: 117: 111: 105: 99: 93: 58: 840: 873: 222: 66: 49:
Fastest presents a command-line user interface. The user first needs to load a Z specification written in
202: 662: 251: 218: 38: 831:
Information Technology — Z Formal Specification Notation — Syntax, Type System and Semantics
65:
of each operation. After testing trees have been generated, users can browse them and their
8: 878: 848:
8th IEEE International Conference on Software Engineering and Formal Methods (SEFM), 2010
667: 145: 30: 808:
Stocks, Phil; Carrington, David (1996), "A framework for specification-based testing",
57:
standard. Then, the user has to enter a list of the operations to test as well as the
206: 185: 817: 262: 800: 261:
In Fastest users can add testing tactics of their own by implementing the Tactic
321:* makes possible its application to a test class in order to generate new ones. 318:* Interface that abstracts a testing tactic (needed to generate test trees) and 190: 20: 77:. Once testing trees have been pruned, users can instruct Fastest to find one 862: 342:* Applies this tactic to the specified test class and returns the list with 34: 821: 845: 752: 739: 726: 61:
to apply to each of them. In a third step Fastest generates the
50: 573:* Gets the instance of TacticInfo associated to this object. 540:* Sets the instance of TacticInfo associated to this object. 851: 89:
Currently, Fastest supports the following testing tactics:
600:* @return the string with the description of this tactic. 794: 778: 765: 687: 171: 84: 184:
variable to a finite set and then by calculating the
74: 480:* Gets the Z schema box of the operation under test. 447:* Sets the Z schema box of the operation under test. 423:* Gets the Z schema box of the operation under test. 156:
are conjunctions of parametric Z atomic predicates.
135:
Fastest provides two ways of pruning testing trees:
41:(TTF) proposed by Phil Stocks and David Carrington. 209:project. The tool can be used in one of two modes: 130: 33:tool that works with specifications written in the 390:* Sets the specification of the system under test. 860: 807: 753:Cristia, Rodriguez Monetti & Albertengo 2010 740:Cristia, Rodriguez Monetti & Albertengo 2010 727:Cristia, Rodriguez Monetti & Albertengo 2010 700: 196: 245: 828: 713: 810:IEEE Transactions on Software Engineering 504:* Parses the parameters of this tactic. 861: 621:* Sets the description of this tactic. 597:* Gets the description of this tactic. 172:How Fastest finds abstract test cases 779:Cristia & Rodriguez Monetti 2009 766:Cristia & Rodriguez Monetti 2009 688:Cristia & Rodriguez Monetti 2009 85:Testing tactics supported by Fastest 81:for each leaf in each testing tree. 273:client.blogic.testing.ttree.tactics 13: 69:, and, more importantly, they can 14: 890: 16:Computer programming testing tool 131:Pruning testing trees in Fastest 771: 758: 745: 732: 719: 706: 693: 680: 291:net.sourceforge.czt.z.ast.Spec 118:Proper Subset of Set Extension 1: 788: 345:* the generated test classes. 701:Stocks & Carrington 1996 7: 656: 197:Architecture and technology 37:. The tool implements the 10: 895: 837:, 2002, pp. 196 pages 799:. Rio de Janeiro, Brazil: 246:Adding new testing tactics 18: 205:application based on the 75:automatically or manually 673: 267: 250:As can be seen from the 44: 663:Test Template Framework 229:) which try to find an 207:Community Z Tools (CZT) 167:unimportant test cases. 124:Subset of Set Extension 94:Disjunctive Normal Form 39:Test Template Framework 19:For the 2011 film, see 869:Software testing tools 53:format verifying the 874:Formal methods tools 624:* @param description 154:Elimination theorems 150:elimination theorems 73:any test class both 668:Model-based testing 543:* @param tacticInfo 225:to servers (called 217:Fastest works as a 178:abstract test cases 100:Standard partitions 31:model-based testing 841:ISO/IEC 13568:2002 231:abstract test case 139:Automatic pruning. 79:abstract test case 822:10.1109/32.553698 450:* @param opScheme 393:* @param opScheme 309:common.z.OpScheme 186:Cartesian product 886: 855: 838: 836: 824: 804: 782: 775: 769: 762: 756: 749: 743: 736: 730: 723: 717: 710: 704: 697: 691: 684: 652: 649: 646: 643: 640: 637: 634: 631: 628: 625: 622: 619: 616: 613: 610: 607: 604: 601: 598: 595: 592: 589: 586: 583: 580: 577: 574: 571: 568: 565: 562: 559: 556: 553: 550: 547: 544: 541: 538: 535: 532: 529: 526: 523: 520: 517: 514: 511: 508: 505: 502: 499: 496: 493: 490: 487: 484: 481: 478: 475: 472: 469: 466: 463: 460: 457: 454: 451: 448: 445: 442: 439: 436: 433: 430: 427: 424: 421: 418: 415: 412: 409: 406: 403: 400: 397: 394: 391: 388: 385: 382: 379: 376: 373: 370: 367: 364: 361: 358: 355: 352: 349: 346: 343: 340: 337: 334: 331: 328: 325: 322: 319: 316: 313: 310: 307: 304: 301: 298: 295: 292: 289: 286: 283: 280: 277: 274: 271: 239:application mode 234:testing servers. 215:distributed mode 112:In Set Extension 894: 893: 889: 888: 887: 885: 884: 883: 859: 858: 850:. Pisa, Italy: 834: 816:(11): 777–793, 801:Springer-Verlag 791: 786: 785: 776: 772: 763: 759: 750: 746: 737: 733: 724: 720: 714:Z Standard 2002 711: 707: 698: 694: 685: 681: 676: 659: 654: 653: 650: 647: 644: 641: 638: 635: 632: 629: 626: 623: 620: 617: 614: 611: 608: 605: 602: 599: 596: 593: 590: 587: 584: 581: 578: 575: 572: 569: 566: 563: 560: 557: 554: 551: 548: 545: 542: 539: 536: 533: 530: 527: 524: 521: 518: 515: 512: 509: 506: 503: 500: 497: 494: 491: 488: 485: 482: 479: 476: 473: 470: 467: 464: 461: 458: 455: 452: 449: 446: 443: 440: 437: 434: 431: 428: 425: 422: 419: 416: 413: 410: 407: 404: 401: 398: 395: 392: 389: 386: 383: 380: 377: 374: 371: 368: 365: 362: 359: 356: 353: 350: 348:* @param tClass 347: 344: 341: 338: 335: 332: 329: 326: 323: 320: 317: 314: 311: 308: 305: 302: 300:common.z.TClass 299: 296: 293: 290: 287: 284: 281: 278: 275: 272: 269: 256:testing tactics 248: 227:testing servers 199: 176:The tool finds 174: 161:Manual pruning. 133: 87: 59:testing tactics 47: 24: 17: 12: 11: 5: 892: 882: 881: 876: 871: 857: 856: 843: 826: 805: 790: 787: 784: 783: 770: 757: 744: 731: 718: 705: 692: 678: 677: 675: 672: 671: 670: 665: 658: 655: 636:setDescription 612:getDescription 268: 254:presentation, 247: 244: 243: 242: 235: 198: 195: 173: 170: 169: 168: 163: 162: 158: 157: 141: 140: 132: 129: 128: 127: 121: 115: 109: 103: 97: 86: 83: 46: 43: 21:Fastest (film) 15: 9: 6: 4: 3: 2: 891: 880: 877: 875: 872: 870: 867: 866: 864: 853: 849: 844: 842: 833: 832: 827: 823: 819: 815: 811: 806: 802: 798: 793: 792: 780: 774: 767: 761: 754: 748: 741: 735: 728: 722: 715: 709: 702: 696: 689: 683: 679: 669: 666: 664: 661: 660: 588:getTacticInfo 555:setTacticInfo 495:getOriginalOp 462:setOriginalOp 266: 264: 259: 257: 253: 240: 236: 232: 228: 224: 220: 219:client–server 216: 212: 211: 210: 208: 204: 201:Fastest is a 194: 192: 191:unsatisfiable 187: 183: 179: 165: 164: 160: 159: 155: 151: 147: 143: 142: 138: 137: 136: 125: 122: 119: 116: 113: 110: 107: 104: 101: 98: 95: 92: 91: 90: 82: 80: 76: 72: 68: 64: 60: 56: 52: 42: 40: 36: 32: 28: 22: 847: 830: 813: 809: 796: 773: 760: 747: 734: 721: 708: 695: 682: 507:* @param str 260: 249: 238: 226: 223:test classes 214: 200: 175: 153: 149: 134: 88: 67:test classes 63:testing tree 48: 26: 25: 645:description 372:applyTactic 282:java.util.* 146:undecidable 879:Z notation 863:Categories 835:(1 MB PDF) 789:References 585:TacticInfo 564:tacticInfo 561:TacticInfo 106:Free Types 35:Z notation 576:* @return 522:parseArgs 510:* @return 483:* @return 426:* @return 351:* @return 330:interface 263:interface 657:See also 492:OpScheme 471:opScheme 468:OpScheme 519:boolean 438:getSpec 405:setSpec 270:package 27:Fastest 642:String 630:public 609:String 606:public 582:public 549:public 528:String 516:public 489:public 456:public 432:public 399:public 381:tClass 378:TClass 366:TClass 357:public 333:Tactic 327:public 306:import 297:import 288:import 279:import 120:(PSSE) 674:Notes 126:(SSE) 114:(ISE) 71:prune 51:LaTeX 45:Usage 29:is a 852:IEEE 633:void 552:void 459:void 435:Spec 414:spec 411:Spec 402:void 369:> 363:< 360:List 203:Java 108:(FT) 818:doi 618:/** 615:(); 594:/** 591:(); 570:/** 537:/** 531:str 501:/** 498:(); 477:/** 444:/** 441:(); 420:/** 387:/** 339:/** 315:/** 252:TTF 237:In 213:In 182:VIS 55:ISO 865:: 839:. 814:22 812:, 648:); 627:*/ 603:*/ 579:*/ 567:); 546:*/ 534:); 513:*/ 486:*/ 474:); 453:*/ 429:*/ 417:); 396:*/ 384:); 354:*/ 324:*/ 854:. 825:. 820:: 803:. 781:) 777:( 768:) 764:( 755:) 751:( 742:) 738:( 729:) 725:( 716:) 712:( 703:) 699:( 690:) 686:( 651:} 639:( 558:( 525:( 465:( 408:( 375:( 336:{ 312:; 303:; 294:; 285:; 276:; 23:.

Index

Fastest (film)
model-based testing
Z notation
Test Template Framework
LaTeX
ISO
testing tactics
testing tree
test classes
prune
automatically or manually
abstract test case
Disjunctive Normal Form
Standard partitions
Free Types
In Set Extension
Proper Subset of Set Extension
Subset of Set Extension
undecidable
abstract test cases
VIS
Cartesian product
unsatisfiable
Java
Community Z Tools (CZT)
client–server
test classes
abstract test case
TTF
testing tactics

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑