二、连接两个Android设备或启动两个虚拟机
  使用
  adb devices
  获取udid
  三、项目路径下新建两个testng.xml
testng1.xml
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite1">
<parameter name = "port" value = "4723"/>
<parameter name = "udid" value = "emulator-5554"/>
<test name="Test">
<classes>
<class name="com.testerhome.Suite1"/>
</classes>
</test>
</suite>
testng2.xml
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite2">
<parameter name = "port" value = "4725"/>
<parameter name = "udid" value = "emulator-5556"/>
<test name="Test">
<classes>
<class name="com.testerhome.Suite1"/>
</classes>
</test>
</suite>
  四、开启两个appium server*注2、注3
  第一个:
  Port:4723
  bootstrapPort:4724
  第二个:
  Port:4725
  bootstrapPort:4726
  五、导出依赖*注4
  因为是用maven工程创建的,所以先导出依赖到项目路径下的lib文件夹
  mvn dependency:copy-dependencies -DoutputDirectory=lib
  六、执行测试
  命令行
  java -classpath ". arget est-classes" -Djava.ext.dirs=lib org.testng.TestNG -suitethreadpoolsize 2 testng1.xml testng2.xml
  如果没有配置TestNG环境变量
  java -classpath ". arget est-classes;D:Programs estng-6.8 estng-6.8.jar" -Djava.ext.dirs=lib org.testng.TestNG -suitethreadpoolsize 2 testng1.xml testng2.xml
  七、查看报告
  默认在项目路径下的test-output文件夹
  注1:
  这个测试类没有指定app路径,如果指定,同时unzip的时候会冲突。目前是复制了多个apk。
  File app = new File(appDir, "AppName"+port+".apk");
  注2:
  两个端口的介绍可以看这两个链接:
  appium 自动化测试教程 ppt(第二版)
  http://testerhome.com/topics/284
  Appium Android Bootstrap源码分析之简介
  http://blog.csdn.net/zhubaitian/article/details/40619777
  注3:
  如果使用到Selendroid或Chromium,还需要指定其他端口(需要修改测试类)
  Selendroid port:8080
  Selendroid port:8081
  Chromium port:9515
  Chromium port:9516
  注4:
  本来准备用mvn test执行的,但没试出来传suitethreadpoolsize参数的办法