【转】maven 自动化web应用集成测试
程序员文章站
2022-04-06 23:48:31
...
web应用集成测试的时候,各位还需要启动web容器,然后打开浏览器,输入ulr,然后看到浏览器的输出吗?
下面我们用maven做到自动化!
我们利用maven的生命周期和jetty插件来实现。
下面描述下做的自动化web集成测试实现的原理。
1,在生命周期pre-integration-test启动jetty容器
2,在生命周期integration-test中测试我们写的***IT.java类
3,在post-integration-test shutdow jetty容器。
在pom.xml中加入代码如下:
<profiles> <profile> <id>ittest</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <executions> <execution> <id>run-integration-test</id> <phase>integration-test</phase> <goals> <goal>test</goal> </goals> <configuration> <includes> <include>**/*IT.java</include> </includes> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version>6.1.26</version> <configuration> <contextPath>/</contextPath> <stopPort>9966</stopPort> <stopKey>stop-jetty-for-it</stopKey> <connectors> <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> <port>6211</port> </connector> </connectors> </configuration> <executions> <execution> <id>start-it-jetty</id> <phase>pre-integration-test</phase> <goals> <goal>run</goal> </goals> <configuration> <daemon>true</daemon> </configuration> </execution> <execution> <id>stop-it-jetty</id> <phase>post-integration-test</phase> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles>
然后就可以编写测试用例了
步骤如下:
1,定义一个以此命名的****IT的测试类(integration test缩写), 在里面华丽的写好你的测试逻辑。
再此不举例了,主要一个思路可以用httpclint来实现里面的测试代码。
2,然后 执行 mvn clean post-integration-test -Pittest
好了 就可以看到我们测试用例是否通过。
上一篇: 3月25日 插值-样条插值