参考资料:
testin云测 https://www.testin.cn
接口自动化测试平台:http://120.79.232.23
星云测试 http://www.threadingtest.com
腾讯云测 http://wetest.qq.com
阿里云测 http://mqc.aliyun.com
51testing社区: http://www.51testing.com/html/
testhome社区: https://testerhome.com/topics/
霍格沃兹测试学院
http://www.dragontesting.cn
https://viptest.net
http://www.primeton.com/products/uc/overview.php
https://www.cnblogs.com/40406-jun/p/6642112.html

Appium+Python3+iOS真机环境搭建
Appium+IOS+Java真机自动化环境搭建配置
Selenium Grid/zalenium+robotium
selenium+testng/unitest/pytest

##可视化测试系统
demo: http://47.100.231.216:8083/atnest/
用户名:user
密码: user

Allure--自动化测试报告生成
https://github.com/allure-framework/allure2/releases
自动化测试--实现一套完全解耦的测试框架(三)
https://www.cnblogs.com/clairejing/p/9756385.html

https://opensource.zalando.com/zalenium/#usage
sonarqube+jenkins实现持续CodeReview

itest--https://www.cnblogs.com/mypm/p/10823752.html
Java+Testng+Maven+Jenkins+ExtentReports+Retrofit2+Git
自动化、极速、稳定
www.importnew.com/14508.html
http://www.dragontesting.cn/index.html

项目管理、接口管理、用例管理、测试报告、任务设置
https://www.xuebuyuan.com/763996.html
https://testerhome.com/opensource_projects/37

###git项目
https://github.com/liuweijw/fw-cloud-framework
https://github.com/ZhuBaker/Tracing
https://www.infoq.cn/article/kFSZ-ZBBp566XD8hTiwt 蚂蚁金服自动化测试框架 SOFAActs 原理和使用
https://github.com/sofastack/sofa-acts

##自动化测试
https://git.bxd365.com/laoliang/autotestclient.git
##
http://itindex.net/detail/58083-%E6%80%A7%E8%83%BD-%E6%B5%8B%E8%AF%95

############自动化测试开发服务器地址:
192.168.1.81
root
xiangju123456

##jenkins发布机##
http://192.168.1.81:9090
jenkins_admin

###luckyframe测试环境地址:192.168.1.117
root
abcd.1234A117
Maven 3.5.4+idea

###MAT云真机地址
http://192.168.1.81:8080/

##stf原生群控地址:
http://192.168.1.81:7100/

##HttprunnerManager系统地址:
http://192.168.1.81/api/register/
用户名:maxtian
密码: tianyi

https://github.com/HttpRunner/HttpRunnerManager

接口测试jmeterweb化地址:
http://ownerworld.tpddns.cn:8089/#/home
账号:zgq346712481

###testin云测平台
https://www.testin.cn/realmachine/index.htm
calfonlyone@foxmail.com

##docker官方账号
zgqdocker123456
12列shfit12列

docker镜像迁移
nohup docker save test_init_img | gzip > /home/xiangju/soft_three/open-MAT-test_img201904.tar.gz 2>&1 &
https://www.jianshu.com/p/64becdd8927c
###############################
Hadoop(hdfs+hbase+MapReduce+hive)

兼容测试的原理,遍历跑业务脚本到批量真机驱动APP进行业务操作,然后收集监控日志分析,输出测试报告
#############如何通过 Docker 快速构建 Appium 开发环境
###
1 添加用户

adduser xiangju
passwd xiangju

**cabuxj123

whereis sudoers
ls -l /etc/sudoers

chmod -v u+wrx /etc/sudoers

vi /etc/sudoers
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
xiangju ALL=(ALL) ALL

centos7中没有安装ifconfig命令的解决方法
yum install net-tools.x86_64

二 部署docker
https://www.runoob.com/docker/centos-docker-install.html

sudo usermod -aG docker your-user

$ sudo docker run hello-world
docker ps
https://www.runoob.com/docker/docker-hello-world.html
###使用docker部署STF服务(CentOS环境)
一、安装docker环境
https://hub.docker.com/r/appium/appium
sudo service docker restart
1 docker中启动所有的容器命令
docker start $(docker ps -a | awk '{ print $1}' | tail -n +2);

docker restart nginx

2 docker中关闭所有的容器命令
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2);

3 docker中删除所有的容器命令
docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2);

docker rm fb087642b497(镜像ID)

4 docker中删除所有的镜像
docker rmi $(docker images | awk '{print $3}' |tail -n +2);
su root # 先切换到root用户, 再执行以下命令
systemctl enable docker # 开机自动启动docker

systemctl start docker # 启动docker
systemctl restart docker # 重启dokcer

查看日志
docker logs -f 容器名

Docker 容器镜像删除
1.停止所有的container,这样才能够删除其中的images:
docker stop $(docker ps -a -q)

如果想要删除所有container的话再加一个指令:
docker rm $(docker ps -a -q)

2.查看当前有些什么images
docker images

3.删除images,通过image的id来指定删除谁
docker rmi <image id>

想要删除untagged images,也就是那些id为<None>的image的话可以用
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

要删除全部image的话
docker rmi $(docker images -q)

更新软件
sudo yum update

执行安装
sudo yum install docker

查看docker镜像
sudo docker images
docker pull muicoder/appium

//(1)启动镜像并运行命令
sudo docker run centos echo 'hello word'
//(2)启动交互式终端
docker run --name=bxp02 -i -t centos /bin/bash

##进入指定的容器--根据服务关键字过滤
sudo docker exec -it `(docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}')` /bin/bash

1 docker start 容器名 启动某个容器
2 docker stop 容器名 停止某个容器
3 docker rm 容器名 删除某个容器

二、拉取相关镜像

STF镜像
sudo docker pull openstf/stf:latest

Android adb镜像
sudo docker pull sorccu/adb:latest

rethinkdb镜像
sudo docker pull rethinkdb:latest

ambassador镜像
sudo docker pull openstf/ambassador:latest

nginx代理镜像
sudo docker pull nginx:latest

三、创建容器实例
在CentOS7中运行docker容器,挂载的本地目录在容器中没有执行权限,原因是CentOS7中的安全模块selinux禁用了相关权限。
关闭selinux
su -c "setenforce 0"
启动容器

启动rethinkdb数据库
sudo docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb rethinkdb --bind all --cache-size 8192 --http-port 8090

启动adb service ##把docker adb服务设备挂载目录--映射到宿主机的挂载设备目录--插上USB设备(手机)
sudo docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb --net host sorccu/adb:latest

启动stf(最后的ip地址参数为本机的局域网ip地址)
sudo docker run -d --name stf --net host openstf/stf stf local --public-ip 192.168.1.81

##abd远程连接无线设备
sudo docker run -d --name stf --net host openstf/stf stf local --public-ip 192.168.1.81 --adb-host 192.168.10.135 --adb-port 5037 --allow-remote

查看启动的docker容器
sudo docker ps -a
四、关闭防火墙 查看stf服务

关闭系统防火墙
systemctl stop firewalld.service

打开浏览器输入:http://192.168.1.81:8090/ 访问rethinkdb数据库
对象数据库查询
使用示例: Data Explorer 在线查询工具

0.列出所有的数据库
r.dbList()

1.列出数据库rethinkdb下所有表
r.db('rethinkdb').tableList()

2.列出jobs表下面的内容
r.db('rethinkdb').table('jobs')

打开浏览器输入:http://192.168.1.81:7100 访问stf服务

####http://192.168.1.81:7100/auth/mock/
stftest
346712481@qq.com

作者:与你若只如初见v
链接:https://www.jianshu.com/p/10bdf33d2c64
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
###########################

###docker appium环境搭建

Docker Appium 配置

docker pull appium/appium:1.9.1-p0
docker pull appium/appium-emulator:1.1-arsenal
docker run --privileged -d -p 4723:4723 -v /dev/bus/usb:/dev/bus/usb --name appium-1.9.1-p0 appium/appium:1.9.1-p0

#####基于docker实现APP和WEB自动化测试分布式并发执行脚本
####docker+selenium grid+python实现分布式自动化测试
https://blog.csdn.net/songer_xing/article/details/78626592

docker run -p 5556:4446 -d --name hub selenium/hub

docker run -d -p 5901:5901 --link hub:hub selenium/node-chrome-debug

使用APPium+Robotframework框架实现一台电脑连接多台安卓设备自动化测试

###stf二次开发
1 修改登录页logo
/usr/local/node/node-v8.11.2-linux-x64/lib/node_modules/stf/res/common/logo
2 修改设备页logo
http://192.168.10.135:7100/static/app/build/e831b7164c8a65b849691bff62cdb160.png
/usr/local/node/node-v8.11.2-linux-x64/lib/node_modules/stf/res/build

3 OPENSTF平台网络流量优化方案详解--https://blog.csdn.net/zhonglunshun/article/details/80831537
/usr/local/lib/node_modules/stf/lib/units/device/plugins/screen/stream.js

docker下修改
/app/lib/units/device/plugins/screen
80--50
/app/lib/cli/device/index.js
/app/lib/cli/provider/index.js
cat /app/lib/cli/provider/index.js|grep 50

/app/node_modules/eventemitter3/index.js

####项目介绍
功能
系统支持
支持Android版本2.3.3 (SDK10) 到7.1 (SDK25))
支持Wear 5.1
无需root

Web浏览器管理设备
屏幕操作和显示(30-40fps)
支持PC机键盘输入到远程的设备(复制粘贴)
支持多点触控操作远程设备
支持adb connnect远程连接调试
拖拽安装APK
远程设备提供
设备信息的展示(如:网络状态,MIME,android版本,手机型号等等)
远程开关机,远程开关WIFI,截屏,LogCat等等
执行Shell命令
设备文件管理

主要依赖
Node.js >= 4.2 (latest stable version preferred)
ADB properly set up
RethinkDB >= 2.2
GraphicsMagick (for resizing screenshots)
ZeroMQ libraries installed
Protocol Buffers libraries installed
yasm installed (for compiling embedded libjpeg-turbo)
pkg-config so that Node.js can find the libraries
平台语言

页面html使用Pug模版引擎
前端使用的是Angularjs
后端使用的是Nodejs
数据库使用的是对象型数据库Rethinkdb

Rethinkdb
Rethinkdb 属于对象型数据库,使用的是json字符串格式保存数据。
目录详解
/.tx #集成翻译平台Transifex的相关配置,用于语言翻译
/bin #启动文件,调用的是lib/cli.js
/docker #Docker的相关配置
/lib #后端
/res #前端
/doc #文档说明,包含VNC,部署,API
/test #状态检测
/vendor #安装到手机上的应用和服务,包括minirev,minitouch,STFService

前端res

主要为Service服务和View页面两大部分

/app #前端web
- /components/stf #服务组件,用于与后端通讯
- /control-panes #页面,设备控制
- /device-list #页面,设备列表
- /docs #页面,帮助
- /layout #页面,布局
- /menu #页面,菜单
- /setting #页面,设置
- /terminal #页面,终端样式
- /user #页面,用户,暂未完成
- /views #页面,主视图
/auth #登录认证
- /ladp #页面,LADP认证
- /mock #页面,默认验证
/common #其他
- /lang #语言包
- /logo #页面,图标
- /status #页面,脚本
/test #登录,跳转
/web_modules #样式

后端lib
/db #数据操作相关文件
/units #核心代码,用于功能实现
- /api #主要的RESTful APIs
- /app #提供主要HTTP服务,处理所有静态资源,包括图片,脚本和样式表
- /auth #授权验证,Mock auth,OAuth 2.0,LDAP,SAML 2.0
- /device #设备功能的具体实现.设备端底包,服务和STFservice.apk的安装
- /log #将设备事件log存储至数据库
- /notify #用于推送通知或到你的环境
- /pooxy #数据库代理相关
- /processer #设备和app之间的桥,几乎所有通讯都经过它
- /provider #设备提供和发收命令
- /reaper #接收心跳,处理设备异常断连
- /storage #截图,图像存储和调整,操作apk
- /triproxy #用于接受和处理来自app和设备端的请求
- /websocket #用于客户端js和服务端(ZeroMQ,Protobuf )的通讯,所有action均由此发送
/util #内部方法
/wire #队列,路由,流相关方法
##########################################################

docker restart adbd #开启容器内的adb
docker rm CONTAINER ID
sudo docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb --net host sorccu/adb:latest
docker exec -it CONTAINER ID /bin/sh

docker restart hub
docker restart stf
docker restart rethinkdb
docker restart new_appium1

docker logs -f 容器名 #查看日志
docker exec -it `(docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}')` /bin/bash
docker exec -it CONTAINER ID /bin/bash
docker exec -it CONTAINER ID /bin/sh
docker ps -a #查看当前运行的容器

########stf--adb远程无线连接设备
http://192.168.10.135:7100/#!/control/192.168.10.236:5554
##error: could not install *smartsocket* listener: Address already in use
adb kill-server 杀掉宿主机的adb服务端口 (docker sorccu/adb与宿主机只能运行其中一个)
lsof -i tcp:5037

docker exec -it 42624571f8e6 /bin/sh 进入容器
adb tcpip 5555 开启无线端口
adb connect 192.168.10.115:5555 ## 服务器adb 连接无线设备IP+端口
adb connect命令连接多个Android设备

adb shell 进入手机的控制终端,相当于原生的Linux系统的各种操作。
  当提示符为$符号,说明未获得超级管理员权限,输入su,可编程#
  adb kill-server
  adb start-server
  adb push /data/data/123.txt D:\ 复制文件到d盘目录adb
lsof -n -i4TCP:5037 | grep LISTEN
kill -9 <PID>

adbkit abd无线连接
STF中ADB connect的使用
安装nodejs
推荐使用nvm安装
安装adbkit
$ npm i -g adbkit
启动usb转tcp服务
$ adbkit usb-device-to-tcp -p $port $serial
再另一台装有adb的机器上进行设备的连接
假设启动adbkit服务的机器ip是10.0.0.1 端口是15555
$ adb connect 10.0.0.1:15555

STF 远程控制大量 Android 设备
ADB连接手机的两种方式(usb数据线连接和wifi连接)
通过adb连接到Docker容器中的USB Android设备

如何通过 Docker 快速构建 Appium 开发环境?

https://jingyan.baidu.com/article/ce436649379e0a3772afd354.html
###docker制作镜像,然后导出,上传远程服务器,然后再导入运行
docker save eb40dcf64078> /root/mydjango-save-1016.tar 将镜像保存为本地文件,其中eb40dcf64078为image id

使用load方法加载刚才上传的tar文件
docker load < /root/mydjango-save-1016.tar

#查看容器
docker ps -a|grep help
#进入容器
docker exec -it 1113a9057304 /bin/bash

##进入指定的容器--根据服务关键字过滤
docker exec -it `(docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}')` /bin/bash
docker exec -it `docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}'` /bin/bash
##查看php服务
ps -ef|grep php

docker ps -a|grep help|awk -f {}

docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}'

docker exec -it |docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}'|/bin/bash

docker exec -it < `docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}'` /bin/bash

docker exec -it | (docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}') /bin/bash

docker rm `docker ps -a | grep Exited | awk'{print $1}'` 删除异常退出的容器

docker exec -it `(docker ps -a|grep help|sed -n "1, 1p"| awk '{print $1}')` /bin/bash

docker ps -q --no-trunc --filter name=^/foo$

docker ps -q --no-trunc --filter name=^rest-helper.beta$

自动化测试平台环境docker部署的更多相关文章

  1. 生产环境Docker部署ELK跨区访问kafka不通问题的解决

    由于分布式系统的日志集中采集的需求非常强烈,我们组通过调研和实践搭建了一套基于Docker的日志收集系统Amethyst. 我们首先在测试环境搭建了一套基于Docker swarm集群的ELK分布式环 ...

  2. web自动化测试---测试环境的部署

    当前我的测试环境配置如下: python3.6 下载地址: https://www.python.org/downloads/release/python-365/ 选择windows版本,下载完成后 ...

  3. dapi 基于Django的轻量级测试平台八 Docker部署

    QQ群: GitHub:https://github.com/yjlch1016/dapi 采用Docker+Supervisor+Nginx+uWSGI+Django 一.Dockerfile文件: ...

  4. 完整部署CentOS7.2+OpenStack+kvm 云平台环境(3)--为虚拟机指定固定ip

    之前在测试环境(centos7.2)上部署了openstack云平台(完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)--基础环境搭建),openstack在neutron组网 ...

  5. Docker部署SDN环境

    2014-12-03 by muzi Docker image = Java class Docker container = Java object 前言 5月份的时候,当我还是一个大学生的时候,有 ...

  6. 测试环境docker化(一)—基于ndp部署模式的docker基础镜像制作

    本文来自网易云社区 作者:孙婷婷 背景 我所在测试项目组目前的测试环境只有一套,在项目版本迭代过程中,开发或产品偶尔会在测试环境进行数据校验,QA人数在不断增加,各个人员在负责不同模块工作时也会产生脏 ...

  7. 完整部署CentOS7.2+OpenStack+kvm 云平台环境(4)--用OZ工具制作openstack镜像

    在部署openstack云平台环境的时候,需要上传镜像到glance. 首先下载iso镜像,这里下载了centos6.5镜像,放到/usr/local/src目录下然后用OZ工具制作openstack ...

  8. 在生产环境使用Docker部署应用

    导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产 ...

  9. 学习笔记TF022:产品环境模型部署、Docker镜像、Bazel工作区、导出模型、服务器、客户端

    产品环境模型部署,创建简单Web APP,用户上传图像,运行Inception模型,实现图像自动分类. 搭建TensorFlow服务开发环境.安装Docker,https://docs.docker. ...

随机推荐

  1. [Codeforces 274E]:Mirror Room(模拟)

    题目传送门 题目描述 有一个$n\times m$的格子图,其中有一些是黑色的,另一些为白色.从某个白色格子的中心点向左上($NW$),左下($SW$),右上($NE$),右下($SE$)四个方向中的 ...

  2. package.json保存

    # 确保已经进入项目目录 # 确定已经有 package.json,没有就通过 npm init # 创建,直接一路回车就好,后面再来详细说里面的内容. # 安装 webpack 依赖 npm ins ...

  3. ORACLE查询隐含参数

    查询隐含参数:col name for a30col VALUE for a10col DESCRIB for a40set lines 200SELECT x.ksppinm NAME, y.ksp ...

  4. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_09 序列化流_6_练习_序列化集合

  5. 如何减小VMware虚拟机硬盘空间

    VMware是微软出品的目前最好的虚拟机件,利用虚拟机可轻松实现多系统同时运行.特别需要多个系统来完成不同功能的者更是需要,VMware是最好的选择,在这里介绍一些VMware虚拟机使用的小技巧,本文 ...

  6. Parcel在binder通信readStrongBinder和writeStrongBinder

    Binder IPC通信中,Binder是通信的媒介,Parcel是通信的內容.远程调用过程中,其参数都被打包成Parcel的形式来传递. 在IPC通信的Proxy端,我们经常可以看到下面类似的代码, ...

  7. springboot An incompatible version [1.1.32] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]

    1.错误 An incompatible version [1.1.32] of the APR based Apache Tomcat Native library is installed, wh ...

  8. 反弹,反向穿越防火墙,NAT网关等乱七八糟的术语

    反弹,反向穿越防火墙,反向穿越NAT网关等一切与反向有关的网络活动,往往都是指同一回事情. 以前的木马都是客户端(攻击者)控制服务器(用户),把配置好的服务器发给用户来攻击,叫做正向. 现在的木马代码 ...

  9. run_jetty_run插件安装

    eclipse安装run_jetty_run不能使用在线模式,因为Google等网站已经被屏蔽,不能访问.要先下载jar包,本地安装.

  10. [Python3] 014 集合的内置方法

    目录 1. Python3 中如何查看 set() 的内置方法 2. 少废话,上例子 (1) add() (2) 又见清理大师 clear() (3) 又见拷贝君 copy() (4) 找茬君 dif ...