点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨,我在通过CI/CD命令行界面...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨,我在通过CI/CD命令行界面...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,我在通过CI/CD命令行界面对UI5应用程序进行QUnit测试自动化时遇到了麻烦。
当从Documentation SDK(" Explored App")中获取最佳实践示例代码时,例如#/sample ... testing.16/preview
下载源代码zip并解压缩到本地文件夹,例如c:\ test。
在根目录(/webapp上方)配置一个简单的package.json
{ " name":" projectName", " version":" 1.0.0", " devDependencies":{ " grunt":"〜0.4.1", " grunt-contrib-qunit":"> = 0.2.1" } }
咕unt声文件(mygruntfile.js)
module.exports = function(grunt){ "使用严格"; grunt.initConfig({ qunit:{ 全部:['webapp/test/unit/unitTests.qunit.html'] } }); grunt.loadNpmTasks('grunt-contrib-qunit'); grunt.registerTask('default',['qunit']); };
然后在命令提示符的根目录下,安装节点依赖项
npm安装
并运行grunt版本
grunt --gruntfile mygruntfile.js --verbose --debug
您将看到PhantomJS无头浏览器运行时出现多个错误。
我试图用相同的技术来证明,但是在独立的QUnit引导页面上进行测试,并测试了库(即没有任何SAP/UI5代码)。 有趣的是,我还发现了错误,如果从QUnit引导html页面中删除了QUnit脚本标记,则可以解决该错误。
我认为这是由于grunt-contrib-qunit注入了自己的QUnit版本,并且与引导页面中定义的实例冲突。
以下是SAP测试脚本方案和我的最小qunit测试方案(在错误输出的第65行上)常见的一个明显错误:
[D] [" phantomjs"," error.onError"," ReferenceError:找不到变量:QUnit",[{" file":" phantomjs://code/bridge.js"," line" :14," function":""}]]
通过我的独立测试,我可以轻松删除对qunit.js的引导引用; 测试将在无头phantomJS中运行,但在Chrome中将失败。 保留它,它可以在Chrome中运行,但无法实现无头phantomJS。
在UI5最佳实践QUnit测试页中,QUnit被包装在SAP需求库中,我不知道如何删除它。
我对社区的问题是
1)是否存在运行UI5 QUnit和OPA5测试的成功的命令行自动化示例? 直接或通过testsuite.qunit.html页面。 或;
2)有人可以建议如何在unitTests.qunit.html引导页面和UI5中删除或更改QUnit引用吗?
您好,我很乐意报告自己的问题的答案。 一位前同事同事解决了我最初发布的问题。
我的问题1)的答案是 https://github.com/SAP/openui5-sample-app 。 但是,值得注意的是,该示例使用为基于组件的执行而不是iFrame定义的OPA5测试-这需要对单元测试进行代码更改,而不仅仅是构建配置。 这是因为该示例使用了Karma + Istanbul代码覆盖率报告,并且Istanbul不支持iFrames代码覆盖率。
我的问题2的答案是为非PhantomJS浏览器动态编写QUnit js参考:
一周热门 更多>