通常,为每个测试套件指定单个被测试的应用程序。然后通过每个测试案例执行和访问这个AUT。所有的教程展示了单个测试套件方法或单个AUT方法,但是事实上,有可能开始多应用程序以及访问,以及在单个测试套件内测试多个应用程序。 这使得测试不同应用程序的交互或者同一个应用程序的多个实例的交互。例如, 能测试多个应用程序对于测试client/server系统是有必要的。
无论何时开启一个AUT将会创建一个对应的对象,就是Squish使用的对象提供了对AUT的访问。Squish允许我们直接在代码中访问 ApplicationContext 对象,这意味着我们可以查询AUT的信息,如开启的终端命令行,当前状态,等等。通过利用currentApplicationContext 返回的context对象也可以访问这个信息。
Ⅰ.7.1 如何启动和访问待测的多个应用程序
当从单个测试脚本中测试多个应用程序时,第一步就是确保没有设置自动启动的应用程序。使用Squish IDE,点击Test Suite Settings 工具条按钮将测试套件的 Settings View设为可见。现在,在编辑器的Application Under Test (AUT)部分,确保自动开启AUT的checkbox是unchecked状态。
startApplicaition函数用于开启一个应用程序。 这个函数使用指定的命令行参数开启指定的应用程序,返回对应的ApplicationContext 对象。应用程序context对象是一个指向应用程序的句柄。
可选的,作为第二个和第三个参数,可以将一个host 和port传给startApplication函数。这样,在指定的host上startApplication函数将会连接到squishserver ,监听指定的port,而不是使用默认的host和port