时间:2015-07-31 来源:

使用Maven的插件测试 【综合】

Maven本身并不是一个单元测试框架承接网站前端,Java中主流单元测试框架为JUnit和TestNG.Maven所做的只是在构建执行到特定生命周期阶段的时候,承接网站前端作为测试运行期Test Runner,它能兼容Junit3、JUnit4、TestNG.

测试报告 除了命令行方式,团队网页接活Maven还可以使用插件以文件的形式生成测试报告

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.10</version> <configuration> <skip>true</skip> </configuration> </plugin>

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.10</version> <configuration> <includes>**/*Tests.java</includes> </configuration> </plugin>如上,手机网页制作两个星号**用来匹配任意路径网页切图制作,一个星号*匹配除路径分割符外的0个或多个字符. 类似地,网页切图制作也可以用excludes元素排除一些符合默认命名模式的测试类div+css+js切图,如下:

测试覆盖率报告 测试覆盖率是衡量代码质量的一个重要指标.Cobertura是一个优秀的开源测试覆盖率统计工具,网页重构报价Maven通过cobertura-maven-plugin与之集成承接网站前端,用户可以使用简单的命令生成报告.命令如下:

重用测试代码 在命令行运行mvn package的时候,承接网站前端Maven会将项目的主代码及资源文件打包psd切图html,将其安装或部署到仓库之后,psd切图html这些代码就能为他人所用web外包,从而实现Maven项目级别的重用.默认的打包方式不会包含测试代码,div切图排版因此在使用外部依赖的时候网页切图制作,其构件一般都不会包含测试代码.

$ mvn test -Dtest=RandomGeneratorTest 这里test的参数值是测试用例的类名,网页切图制作这行命令效果是只运行RandomGeneratorTest这一个测试类.

也可以混合星号和逗号使用.

**/Test*.java:任何子目录下所有命名以Test开头的Java类**/*Test.java:任何子目录下所有命名以Test结尾的Java类**/*TestCase.java:任何子目录下所有命名以TestCase结尾的Java类 只要将测试类按照以上模式命名div+css+js切图,Maven就能自动运行它们,div+css+js切图用户也就不需要定义测试集合TestSuite来聚合测试用例TestCase.需要注意承接网站前端, Failures: 0, Skipped: 0, Time elapsed: 0.834 sec

动态指定要运行的测试用例

$ mvn test-Dtest=Random*Test 用星号匹配多个字符

有时与用户不仅想跳过测试运行,手机网页制作还想临时跳过测试代码的编译网页切图制作,可以通过以下命令(虽然不推荐):

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.10</version> <configuration> <excludes> <exclude>**/*SkipTest</exclude> </excludes> </configuration> </plugin>

另外,div页面这个test的参数还支持其他赋值方式div+css+js切图,例如:

$ mvn cobertura:cobertura

包含与排除测试用例 Maven提倡约定优于配置,div+css+js切图因此用户应该尽量遵守测试类的命名模式命名.即便如此承接网站前端,maven-surefire-plugin还是允许用户自定义其它测试类,承接网站前端或者排除一些符合默认命名方式的测试类.

maven-surefire-plugin提供了一个test参数让Maven用户能够在命令行指定要运行的测试用例.例如psd切图html,执行以下命令:

$ mvn package -Dmaven.test.skip=true

反复运行单个测试用例是日常开发中很常见的行为.例如web外包,项目代码中有一个失败的测试用例,手机网页制作开发人员就会再次运行这个测试以获得详细的错误报告.在修复该测试的过程中网页切图制作,开发人员也会反复运行它以确认修复代码的正确性.如果仅仅为一个失败的测试用例而反复运行所有测试,网页切图制作会造成不必要的开支div+css+js切图,特别是当项目中测试比较多的时候.

如果未匹配到任何测试类,网页重构报价就会报错且构建失败.根据错误提示可以加上 -DfailIfNoTests=false,告诉maven-surefire-plugin即使没有任何测试也不要报错

例如,承接网站前端有些项目的测试类以Tests结尾psd切图html,这并不符合3种模式.但用户可以通过以下配置让maven自动运行这一类测试:

例如,psd切图htmlaccount-captcha的target目录下txt文件为:

如果有需要web外包,也可以自己定义运行测试类的模式,div切图排版maven-surefire-plugin还支持更高级的TestNG测试集合xml文件.另外网页切图制作,为了能够运行测试,网页切图制作Maven需要在项目中引入测试框架的依赖div+css+js切图,比如添加JUnit测试范围依赖.

现在,div+css+js切图就可以通过依赖声明使用测试包构件承接网站前端,所有测试包构件都使用特殊的test-jar打包类型.注意psd切图html,同样要使用test依赖范围. 参考书籍:《Maven实战》第10章——许晓斌著

需要Maven跳过测试时,psd切图html在命令行加入参数skipTests即可

$ mvn package -DskipTests 也可以在POM中配置maven-surfire-plugin插件提供该属性.但是不推荐web外包,如果需要长期跳过测试则不需要测试代码.

在maven中的default生命周期,手机网页制作其中的test阶段被定义为“使用单元测试框架运行测试”.而生命周期阶段需要绑定到某个插件的目标才能完成真正的工作网页切图制作,test阶段正是与maven-surefire-plugin的test目标相绑定,div页面这是一个内置的绑定.

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.3.2</version> <executions> <execution> <goals> <goal>test-jar</goal> </goals> </execution> </executions> </plugin> 上面配置中div+css+js切图,maven-jar-plugin有两个目标,div+css+js切图分别是jar和test-jar,前者通过Maven的内置绑定在default生命周期的package阶段运行,承接网站前端其行为是对项目主代码进行打包.而后者并没有内置绑定psd切图html,因此上述插件配置显示声明该目标来打包测试代码.通过查询该插件的具体信息可以了解到,承接网页制作test-jar的默认绑定声明周期阶段为package,因此当运行mvn clean package会看到两个目标都得以执行,手机网页制作分别打包了项目主代码和测试代码.

$ mvn test-Dtest=RandomGeneratorTest,AccountCaptchaServiceTetst  用逗号指定多个测试用例

然后,网页切图制作在项目内部重用某个模块的测试代码是很常见的需求.可能某个底层模块的测试代码中包含了一些常用的测试工具类div+css+js切图,或者一些高质量的测试基类供继承.这时就需要通过maven-jar-plugin将测试类打包,网页重构报价如下:

而xml包含的信息就丰富多了承接网站前端,具体可以参见JUnit的标准

在默认情况下,承接网站前端maven-surefire-plugin的test目标会自动执行测试源码路径(默认为src/test/java/)下所有符合一组命名模式的测试类.模式分别为:

参数maven.test.skip同时控制了maven-compile-plugin和maven-surefire-plugin这两个插件的行为.所以如果要通过POM配置实现psd切图html,POM配置如下:

基本的测试报告 默认情况下,psd切图htmlmaven-surfire-plugin会在项目的target/surefire-reports目录下生成两种格式的测试报告:简单文本格式和与Junit兼容的XML格式

跳过测试

版权声明:本文为博主原创文章web外包,未经博主允许不得转载.

点击次数:4874
作者:
web前端行业资讯
Web new NewsList
英特尔宣布与法拉利跨界合作欲将AI技术用于赛车运动 ,,2018年01月11日甲骨文服务器出漏洞:攻击者用漏洞挖矿获取加密货币 ,,2018年01月11日用深度学习设计图像视频压缩算法:更简洁、更强大 ,,2018年01月11日Ubuntu内核和NVIDIA更新:修复Meltdown和Spectre两处漏洞 ,,2018年01月11日AntDesign3.1.1发布,阿里企业级UI设计语言 ,,2018年01月11日微信「跳一跳」带火小游戏,开发者如何快速上手? ,,2018年01月11日谷歌公布最新安卓系统份额:你用上奥利奥了么? ,,2018年01月11日腾讯开发出“3D音效”算法:普通耳机实现3D实时语音效果 ,,2018年01月11日谷歌工程师点赞中国程序员实现Node.js启动超4倍提速 ,,2018年01月11日三星电子总裁兼CE部门负责人金炫奭:万物互联时代到来 ,,2018年01月11日NVIDIA和大众合作建立智能驾驶助手 ,,2018年01月11日GIMPS项目报告发现已知最大素数 ,,2018年01月11日微软与生物技术公司开展AI驱动的血液检测同时诊断数十种疾病 ,,2018年01月11日微软跨平台移动开发工具套件HockeyApp宣布免费 ,,2018年01月11日《硅谷》里神乎其神的压缩技术,AI正在一点点做出来 ,,2018年01月11日LinuxMint19代号敲定为“Tara”预计2018年5月至6月期间发布 ,,2018年01月11日Facebook发布wav2letter工具包,用于端到端自动语音识别 ,,2018年01月11日开源数据库ArangoDB正进行约1156万美元股权融资 ,,2018年01月11日IntelCPU漏洞闹大:腾讯云紧急升级 ,,2018年01月11日2018年1月全球数据库排名:Redis夺回第八 ,,2018年01月11日Lyft将联手无人驾驶公司于CES上展示无人驾驶汽车 ,,2018年01月11日京东X无人超市首家社会门店开业:刷脸进、微信自动结算 ,,2018年01月11日担心被AI取代是杞人忧天?高晓松跨年演讲说的有几分对 ,,2018年01月11日免费授权技术许可Intel宣布在未来CPU中集成雷电3 ,,2018年01月11日算法决定你在社交媒体上看到的信息 ,,2018年01月11日谷歌安全博客披露“英特尔内核漏洞”更多细节 ,,2018年01月04日Postgres10开发者新特性 ,,2017年12月28日阿里巴巴、狗尾草、苏大联合论文:基于对抗学习的众包标注用于中文命名实体识别 ,,2017年12月28日柯洁的2017:20岁,与AI斗与人类斗,其乐无穷 ,,2017年12月28日如果机器人拥有痛觉,这个世界会有哪些不一样? ,,2017年12月28日我的第一个编译器之符号表 【编程语言】2015年04月13日arm-none-linux-gnueabi交叉工具链安装,介绍,区别总结 【编程语言】2015年03月12日LinkedList{singlylinkedlist->doublylinkedlist->circularlinkedlist}【系统运维】2015年01月19日BetterELK,新浪实时日志分析服务进化 【数据库】2015年07月16日第十题(泛型) 【编程语言】2015年03月24日共享个地图控件的样式 【移动开发】2015年08月15日【LeetCode】【Java】BinaryTreeLevelOrderTraversalII 【编程语言】2015年07月22日RubyProfiler详解之stackprof 【移动开发】2015年07月10日UVALive 6959JudgingTroublesmap应用【Web前端】2015年08月29日hdu-4597(博弈DP) 【移动开发】2015年08月14日在Redis-Sentinel的client-reconfig-script脚本中设置VIP 【编程语言】2015年05月05日Hibernate的查询方式知多少二 【移动开发】2015年08月30日androidJSON数据格式解析 【移动开发】2014年11月24日开源加快了软件产业前进的速度 【编程语言】2014年12月01日PHP新手入门学习方法2014年01月29日一些开发文章和各种资源 2,收藏 ,,2016年06月29日华为面试题:四则运算C语言源码 【综合】2015年03月09日JavaScript中的parseInt和Number函数【综合】2015年08月03日Cpp调用sqlserver存储过程时不返回output参数解决办法【Web前端】2014年11月04日Hadoop工程师成为热门职业 2,收藏 ,,2016年06月23日《github一天一道算法题》:搜索二叉树接口实现大合集【架构设计】2014年12月12日油瓶分油问题 【编程语言】2014年12月04日servlet详解【系统运维】2015年07月21日键盘事件中keyCode、which和charCode的兼容性测试2014年01月29日C++对象内存分布(1)-私有虚函数 【综合】2015年06月26日那位可以手机定位的?QQ2100997525【互联网】2014年11月06日全文搜索服务器,ApacheSolr3.6发布 ,,2016年07月24日北大青鸟Asp.net之颗粒归仓 【数据库】2014年12月10日现代化的JVM语言Kotlin?build-1.1.0-dev-5216发布 ,,2016年12月08日跟着鬼哥学so修改,二,进行篇 【编程语言】2014年12月19日
我们保证
We guarantee
> psd效果文件手工切图,保证图片效果最好体积最小利于传输
> 100%手写的HTML(DIV+CSS)编码,绝对符合W3C标准
> 代码精简、css沉余量小、搜索引擎扫描迅速,网页打开快捷
> 应用Css Sprite能够减少HTTP请求数,提高网页性能
> 跨浏览器兼容(IE6、7、8、9,Firefox火狐,Chrome谷歌)