西安企业自助建站系统广西学校网站建设

当前位置: 首页 > news >正文

西安企业自助建站系统,广西学校网站建设,dede响应式网站模板下载,网站建设推广哪个好这里写目录标题 一、目标1、前言2、优势#xff1a;3、涉及技术点4、目标 二、测试app构建、打包过程1、安卓打包的环境要求 三、演示安卓源码打包四、演示安卓App部署1、前提条件2、命令控制apk安装与卸载 五、安卓UI自动化测试1、Appium app自动化测试-Python2、实现的验证点… 这里写目录标题 一、目标1、前言2、优势3、涉及技术点4、目标 二、测试app构建、打包过程1、安卓打包的环境要求 三、演示安卓源码打包四、演示安卓App部署1、前提条件2、命令控制apk安装与卸载 五、安卓UI自动化测试1、Appium app自动化测试-Python2、实现的验证点3、演示 六、安卓App持续集成体系建设实战1、将之前的内容所做的事情用jenkins任务实现2、实现流程图3、jenkins配置4、安卓App自动部署5、测试任务6、添加邮件通知 七、App打包任务与自动部署、自动化测试任务关联 一、目标 1、前言 在持续迭代开发中开发写代码将新的功能加入到app中这样需要测试新的功能。我们需要一个新的可以测试的app包进行测试。 用自动化构建最好是能完成一些基础功能的测试回归测试保证新的迭代不影响旧的功能基础功能测试通过后说明这个测试包可以用接下来可以测试新的功能。 在传统的测试中往往UI自动化测试要滞后于手工测试UI自动化测试验证的功能往往是已有的功能。 现有的自动化体系中UI自动化测试往往测试的是回归的功能已有的功能。 目标app每天build打包build发布build UI自动化测试通过技术手段做一些杂活节省时间、节省人力、物力。 2、优势 重复性定时任务减少人力参与提升工作效率 Build不再是阻碍测试进度的因素 自动化重用率高维护频率低 部署独立的打包构建自动化运行环境让独立运行的帮助团队“干活” 3、涉及技术点 Android App构建 Android SDK使用 安卓模拟器或真机 Appium自动化测试 Jenkins持续集成 Shell脚本开发 Java程序开发 Git (github使用 ) 4、目标 App持续集成体系:全自动化打包、发布、部署、测试的实现思路 安卓App的构建、打包方法 安卓App部署与自动化测试实践 利用Jenkins平台进行持续集成演练 二、测试app构建、打包过程 a、android应用 b、源码https://gitee.com/zhilongya/androidSamplePython c、安卓打包的目标文件app-debug.apk文件 d、安卓打包命令gradlew clean assembleDebug e、安卓安装包的输出路径/root/app/AndroidSampleApp/app/build/outputs/apk/debug 1、安卓打包的环境要求 DK Android SDK Gradle 三、演示安卓源码打包 [rootmylinux1 app]# git clone gitgitee.com:zhilongya/AndroidSampleApp.git 正克隆到 AndroidSampleApp… remote: Enumerating objects: 67, done. remote: Counting objects: 100% (6767), done. remote: Compressing objects: 100% (6060), done. remote: Total 67 (delta 2), reused 0 (delta 0), pack-reused 0 接收对象中: 100% (6767), 591.43 KiB | 751.00 KiB/s, done. 处理 delta 中: 100% (22), done.[rootmylinux1 app]# ls AndroidSampleApp[rootmylinux1 app]# cd AndroidSampleApp/ [rootmylinux1 AndroidSampleApp]# ls app gradle gradlew license.txt README.md settings.gradle build.gradle gradle.properties gradlew.bat README.en.md ScreenShots [rootmylinux1 AndroidSampleApp]# sh gradlew clean assembleDebug Starting a Gradle Daemon (subsequent builds will be faster)BUILD SUCCESSFUL in 46s 27 actionable tasks: 25 executed, 2 up-to-date[rootmylinux1 AndroidSampleApp]# cd app/build/outputs/apk/ [rootmylinux1 apk]# cd debug/ [rootmylinux1 debug]# ls app-debug.apk output.json [rootmylinux1 debug]# pwd /root/app/AndroidSampleApp/app/build/outputs/apk/debug四、演示安卓App部署 1、前提条件 安卓实体机或者安卓模拟器安卓SDK 目标通过命令安装/卸载app 2、命令控制apk安装与卸载 安装adb install file_path卸载adb uninstall package_name D:\androidSamplePythonadb install D:\jenkins_CICD\workspace\BuildAndroidSample_Pipeline_paral\AndroidSampleApp\app\build\outputs\apk\debug\app-debug.apk Performing Push Install D:\jenkins_CICD\workspace\BuildAndroidSample_Pipeline_para…le pushed, 0 skipped. 609.5 MB/s (1736320 bytes in 0.003s)pkg: /data/local/tmp/app-debug.apk Success五、安卓UI自动化测试 1、Appium app自动化测试-Python 源码位置https://gitee.com/zhilongya/iAppBVT_Python.git 开发工具pycharm UI自动化框架appium 测试执行框架pytest appium运行配置DesireCap的获取pytest-testconfig配置文件读取 2、实现的验证点 app可安装 app可启动 app首页预期元素存在 3、演示 from appium import webdriver import unittest import time from pytest_testconfig import configclass TestAppSample:def setup(self):desired_caps {}desired_caps[platformName] Androiddesired_caps[deviceName] 127.0.0.1:7555desired_caps[udid] 127.0.0.1:7555desired_caps[appActivity] .launch.LaunchSplashActivitydesired_caps[appPackage] com.tencent.weworkself.driver webdriver.Remote(http://127.0.0.1:4723/wd/hub, desired_caps)def tearDown(self):self.driver.quit()def test_demo(self):time.sleep(3)self.driver.find_element(AppiumBy.ID,com.tencent.wework:id/cjz).click()tipself.driver.find_element(AppiumBy.ID,com.tencent.wework:id/adn).textassert 微信登录tip六、安卓App持续集成体系建设实战 1、将之前的内容所做的事情用jenkins任务实现 jenkins平台源码构建、打包、发布app测试包jenkins自动部署、测试新app测试包jenkins通知运行结果 2、实现流程图 3、jenkins配置 a、新建项目0902_build_android_app b、限制项目的运行节点app_CICD_node
c、源码管理 d、检出到子目录 目的将源码checkout到AndroidSampleApp目录下 e、添加构建步骤 cd AndroidSampleApp gradlew clean assembleDebugf、添加构建后操作选择归档成品 目的将app测试包输出到控制台方便其他人下载测试 g、构建产生的文件
4、安卓App自动部署 a、新建项目0902_bvt_android_app b、限制项目的运行节点app_CICD_node
c、源码管理 d、检出到子目录 目的将源码checkout到iAppBVT_Python目录下 e、构建步骤 adb uninstall com.appsflyer.androidsampleapp adb install D:\jenkins_CICD\workspace\0902_build_android_app\AndroidSampleApp\app\build\outputs\apk\debug\app-debug.apk构建步骤优化 {adb uninstall com.appsflyer.androidsampleapp}||{adb install D:\jenkins_CICD\workspace\0902_build_android_app\AndroidSampleApp\app\build\outputs\apk\debug\app-debug.apk} adb install D:\jenkins_CICD\workspace\0902_build_android_app\AndroidSampleApp\app\build\outputs\apk\debug\app-debug.apk5、测试任务 {adb uninstall com.appsflyer.androidsampleapp}||{adb install D:\jenkins_CICD\workspace\0902_build_android_app\AndroidSampleApp\app\build\outputs\apk\debug\app-debug.apk} adb install D:\jenkins_CICD\workspace\0902_build_android_app\AndroidSampleApp\app\build\outputs\apk\debug\app-debug.apkcd iAppBVT_Python pip install -r requirements.txt pytest -sv test/test_bvt.py6、添加邮件通知 邮件通知结果
七、App打包任务与自动部署、自动化测试任务关联 实现完成打包任务之后运行自动化测试任务安装新包并运行UI自动化测试验证新安装包的正确性 父子任务 构建后操作选择子任务 当运行完父任务后自动触发子任务的执行