Skip to content

zydemail/UI-test

Repository files navigation

#自动化测试

为H5开发提供自动化测试环境,一次性完成单元测试和UI测试任务,并生成可读性良好的页面报告。 两种测试采用共同的测试框架 mochachai 断言语法,便于学习和使用。

  • 单元测试采用 karma 作为Test Runner,支持seajs,可在chrome中直接使用开发者工具调试。
  • UI 测试采用了广泛使用的 selenium 模拟人工操作,可打开H5页面,并提供了和前端一致的选择器与Promise封装,用于测试任意页面。

安装

  1. 将 chromedriver 浏览器启动程序配置进环境变量。
  2. 将工具 checkout 到本地,在工具根目录打开 cmd,执行npm install

使用

工程根目录下执行gulp,可自动化执行单元测试和UI测试。具体说明入如下:

单元测试

  • 目录文件:将待测试文件放入src/js,模板文件放入src/template,单元测试文件放入spec/unitTest

  • 测试脚本:按照 mocha 测试框架和 chai 断言语法书写测试脚本,并*.spec.js结尾命名

  • seajs 加载:单元测试支持 seajs 写法。为 glue 框架的组件、行为或服务书写测试用例时请使用 seajs 加载。为了保证正确加载执行,请将测试脚本引入测试入口文件中spec/unitTest/common/main.js注意:只有在入口中配置的seajs测试脚本才能执行。

  • 执行:工程根目录下执行gulp unitTest,即可打开浏览器执行测试脚本。

  • 报告:控制台mocha报告或网页版报告reporter/unitTest/unitTestReporter.html

UI 测试

  • 目录文件:UI 测试文件放入spec/UITest中。

  • 测试脚本:遵循 selenium-webdriver 的API,按照 mocha 测试框架和 chai 断言语法书写测试脚本,并*.spec.js结尾命名

  • 执行:工程根目录下执行gulp UITest,可启动浏览器打开测试页面执行端对端测试。

  • 报告:控制台 mocha 报告或网页版报告reporter/UITest/UITestReporter.html

    **PS. ** 如需使用 selenium 的 touch 相关事件,需要手动输出对应 API,即在selenium-webdriver/index.js中添加如下语句:

    exports.TouchSequence = actions.TouchSequence;
    

更新记录

1.0.0 / 2016-08-15

  • 自动化测试环境搭建,支持单元测试和UI测试。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published