通过pagefactory + testng + maven运行自动测试 1)启动硒网格:
java -jar \selenium-server-standalone-2.53.0.jar -role hub
2)启动appium服务器:
appium -a 127.0.0.1 -p 4723 --bootstrap-port 4720 -U 3b06c2a2 --nodeconfig node_config_1.json
appium -a 127.0.0.1 -p 4725 --bootstrap-port 4729 -U LenovoTAB2A8 --nodeconfig node_config_2.json
3)开始测试:mvn test
appium版本:1.6.3 / 1.5.3 /1.4-检查所有版本。 节点版本:js node-v7.7.4-x64.msi java 1.8,Windows 7 x64
30分钟后,第二个appium(-p 4725)使用太多的RAM~1.3Gb,当第一个使用较少的RAM(-p 47253)~300Mb
过了一段时间,appium(-p 4725)d <
<--- Last few GCs --->
2558249 ms: Mark-sweep 1371.3 (1434.9) -> 1371.3 (1434.9) MB, 1745.2 / 0.0 ms [
allocation failure] [GC in old space requested].
2559995 ms: Mark-sweep 1371.3 (1434.9) -> 1372.8 (1408.9) MB, 1745.4 / 0.0 ms [
last resort gc].
2561685 ms: Mark-sweep 1372.8 (1408.9) -> 1374.8 (1408.9) MB, 1689.8 / 0.0 ms [
last resort gc].
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 000002B7252CFB61
1: onread [net.js:530] [pc=000001837B14847C] (this=000000AC5570A169 <a Pipe
with map 0000008EE91F9D21>,nread=410,buffer=00000073E9AE60B9 <an Uint8Array with
map 0000008EE91F8671>)
2: arguments adaptor frame: 3->2
==== Details ================================================
[net.js:530] [pc=000001837B14847C] (this=000000AC5570A169 <a Pipe wi
th map 0000008EE91F9D21>,nread...
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memo
ry
答案 0 :(得分:0)
这绝对是一个问题:我不能代表较旧的服务器版本,但使用 1.7.1 单节点对我来说使用 115-180 Mb RAM并保持在时间内的水平。
从Appium服务器 1.6.5 开始,您可以使用--enable-heapdump
服务器标志打开NodeJS内存转储集合。这可能有助于您调查问题是在您的基础架构设置中还是在appium服务器端。
您还可以查看Selenium Grid的一些替代方案,例如Selenoid