#! /usr/bin/env python #! -*- cording:utf-8 -*- import os import time import csv class App(object): def __init__(self): self.content="" self.starttime="" #启动APP def launchApp(self): cmd='adb shell am start -W -n com.sec.android.app.sbrowser/.SBrowserMainActivity' self.content=os.popen(cmd) #停止APP def StopApp(self): cmd ='adb shell am force-stop com.sec.android.app.sbrowser' os.popen(cmd) def GetLaunchedTime(self): for line in self.content.readlines(): if "ThisTime" in line: self.starttime=line.split(":")[1] #拆分切片启动时间,取thistime后面的时间值 break return self.starttime #控制类 class Controller(object): def __init__(self,count): self.app=App() self.count=count self.alldata=[("timestamp","elapsedtime")] #单次测试过程 def testprocess(self): self.app.launchApp() elpasedtime=self.app.GetLaunchedTime() self.app.StopApp() currenttime=self.getCurrentTime() self.alldata.append((currenttime,elpasedtime)) #多次执行测试过程 def run(self): while self.count>0: self.testprocess() self.count=self.count-1 #获取当前的时间戳 def getCurrentTime(self): currentTime=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) return currentTime #根本原因是Python版本问题python2.x中要求用‘wb’,python3.x中要求用'w',如果写成wb则会报错,要写成w #2.75可以写wb def SaveDataToCSV(self): with open("startTime.csv","w") as f: writer = csv.writer(f) writer.writerows(self.alldata) #写入 if __name__=='__main__': controller=Controller(3) controller.run() controller.SaveDataToCSV()