# caller pass the workdir pathname,test conf by commandline args workdir = sys.argv[1] conf = eval(sys.argv[2]) os.chdir(workdir) # load TestModules sys.path.append(conf["test_lib_dir"]) import interact # prepare files for vpn dp interact.prepare_file(conf, 'vpn') interact.prepare_file(conf, 'dp') # login to vpn,dp ssh_vpn_proc = pexpect.spawn("ssh %s" % (conf['vpns']['1st']['ssh'])) interact.wait_server(conf, ssh_vpn_proc, 'vpn') ssh_dp_proc = pexpect.spawn("ssh %s" % (conf['dps']['1st']['ssh'])) interact.wait_server(conf, ssh_dp_proc, 'dp') # if ./TestBench/ not exist on vpn&dp,then create it ssh_vpn_proc.sendline("if [ ! -d 'TestBench' ];then mkdir TestBench;fi;cd TestBench") interact.wait_server(conf, ssh_vpn_proc, 'vpn') ssh_dp_proc.sendline("if [ ! -d 'TestBench' ];then mkdir TestBench;fi;cd TestBench") interact.wait_server(conf, ssh_dp_proc, 'dp') # transmit scripts to vpn,dp newbash_proc = pexpect.spawn('bash') newbash_proc.sendline( 'scp -r %s/tovpn/* %s:./TestBench' % (workdir, conf['vpns']['1st']['ssh'])) interact.wait_server(conf, newbash_proc) newbash_proc.sendline('scp -r %s/todp/* %s:./TestBench' % (workdir, conf['dps']['1st']['ssh'])) interact.wait_server(conf, newbash_proc)
# caller pass the WORKDIR pathname,test CONF by commandline args WORKDIR = sys.argv[1] CONF = eval(sys.argv[2]) os.chdir(WORKDIR) # load TestModules sys.path.append(CONF["test_lib_dir"]) import interact # prepare files for vpn dp interact.prepare_file(CONF, 'vpn') interact.prepare_file(CONF, 'dp') # login to vpn,dp ssh_vpn_proc = pexpect.spawn("ssh %s" % (CONF['vpns']['1st']['ssh'])) interact.wait_server(CONF, ssh_vpn_proc, 'vpn') ssh_dp_proc = pexpect.spawn("ssh %s" % (CONF['dps']['1st']['ssh'])) interact.wait_server(CONF, ssh_dp_proc, 'dp') # if ./TestBench/ not exist on vpn&dp,then create it ssh_vpn_proc.sendline("if [ ! -d 'TestBench' ];then mkdir TestBench;fi;cd TestBench") interact.wait_server(CONF, ssh_vpn_proc, 'vpn') ssh_dp_proc.sendline("if [ ! -d 'TestBench' ];then mkdir TestBench;fi;cd TestBench") interact.wait_server(CONF, ssh_dp_proc, 'dp') # transmit scripts to vpn,dp newbash_proc = pexpect.spawn('bash') newbash_proc.sendline( 'scp -r %s/tovpn/* %s:./TestBench' % (WORKDIR, CONF['vpns']['1st']['ssh'])) interact.wait_server(CONF, newbash_proc) newbash_proc.sendline('scp -r %s/todp/* %s:./TestBench' % (WORKDIR, CONF['dps']['1st']['ssh'])) interact.wait_server(CONF, newbash_proc)
# parse the options parser = OptionParser() parser.add_option("-d", "--devName", help="target devicei name") (options, args) = parser.parse_args() devName = options.devName return devName if __name__ == "__main__": USAGE_STR = """python check_fps.py -d 8600066""" DEV_NAME = parse_option_args() CONF = parse_config(config_file) if (None == DEV_NAME): print(USAGE_STR) sys.exit(1) DEV_NAME_REGEX = re.compile(r'([1-9]{2})0{2,4}([1-9]\d{0,2})') M = DEV_NAME_REGEX.match(DEV_NAME) if (None == M): print(USAGE_STR) sys.exit(1) else: DEV_VPN_IP = "192.168.%s.%s" % (M.group(1), M.group(2)) SSH_DEV_PROC = pexpect.spawn("ssh -p 443 root@%s" % DEV_VPN_IP) interact.wait_server(CONF, SSH_DEV_PROC, 'node') SSH_DEV_PROC.sendline("logcat -v time -d | grep FpsMeter | tail -1") interact.wait_server(CONF, SSH_DEV_PROC, 'node') print(SSH_DEV_PROC.before.split('\n')[1]) SSH_DEV_PROC.close(force=True)