本文整理汇总了Python中mozrunner.FirefoxRunner.create方法的典型用法代码示例。如果您正苦于以下问题:Python FirefoxRunner.create方法的具体用法?Python FirefoxRunner.create怎么用?Python FirefoxRunner.create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mozrunner.FirefoxRunner
的用法示例。
在下文中一共展示了FirefoxRunner.create方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: run
# 需要导入模块: from mozrunner import FirefoxRunner [as 别名]
# 或者: from mozrunner.FirefoxRunner import create [as 别名]
def run(self):
#Run the built binary if it exists. ONLY WORKS IF BUILD WAS CALLED!
if sys.platform == "darwin":
runner = FirefoxRunner.create(binary=os.path.join(self.shellCacheDir,"mozbuild-trunk","obj-ff-dbg","dist","NightlyDebug.app","Contents","MacOS")+"/firefox-bin")
runner.start()
runner.wait()
elif sys.platform == "linux2":
runner = FirefoxRunner.create(binary=os.path.join(self.shellCacheDir,"mozbuild-trunk","obj-ff-dbg","dist","bin") + "/firefox")
runner.start()
runner.wait()
elif sys.platform == "win32" or sys.platform == "cygwin":
runner = FirefoxRunner.create(binary=os.path.join(self.shellCacheDir,"mozbuild-trunk","obj-ff-dbg","dist","bin") + "/firefox.exe")
runner.start()
runner.wait()
else:
print "Your platform is not currently supported."
quit()
示例2: bisectRecurse
# 需要导入模块: from mozrunner import FirefoxRunner [as 别名]
# 或者: from mozrunner.FirefoxRunner import create [as 别名]
def bisectRecurse(self, testcondition=None, args_for_condition=[]):
#Recursively build, run, and prompt
verdict = ""
current_revision = captureStdout(self.hgPrefix+["id","-i"])
if self.remote:
print "on current revision "+current_revision
print "This would ask for a remote changeset, but it's not implemented yet."
#TODO:
#Remote bisection!
#Step 1. Check if revision is in the archive
#Step 2. If revision is not in the archive, set remote=False and continue (it will build and bisect that revision)
#if not check_archived:
# set remote false and continue
#else:
#Step 3. If the revision is in the archive, download it and its corresponding tests
#STEP3
#1. Extract tests into some directory
#2. Extract Nightly.app into "tests"
#MozInstaller(src=, dest="", dest_app="Nightly.app")
#3. run the following:
#test_command = ['python', 'mochitest/runtests.py', '--appname=./Nightly.app/Contents/MacOS/firefox-bin', '--utility-path=bin', '--extra-profile-file=bin/plugins', '--certificate-path=certs', '--autorun', '--close-when-done', '--console-level=INFO', '--test-path=test_name']
#output = captureStdout(test_command, ignoreStderr=True)
#set verdict based on output
#python mochitest/runtests.py --appname=./Nightly.app/Contents/MacOS/firefox-bin --utility-path=bin --extra-profile-file=bin/plugins --certificate-path=certs --autorun --close-when-done --console-level=INFO --test-path=test_name
#example test name: Harness_sanity/test_sanityException.html
#Step 4. Run and run test to get verdict
#Step 5. Set verdict
elif self.tryPusher:
try:
caller = BuildCaller(host=self.tryhost, port=int(self.tryport), data=current_revision)
print "Getting revision "+current_revision+"..."
except:
print "Failed to connect to trypusher. Make sure your settings are correct and that the trypusher server was started."
exit()
response = caller.getChangeset()
print "Waiting on Mozilla Pulse for revision " + response + "..."
url = caller.getURLResponse(response)
print "the base is " +url_base(url)
#Download it here
#1. Download from url, extract to same place as tests
#2. Run test or start browser.
binary_path = os.path.join(self.binaryDir,url_base(url))
downloaded_binary = download_url(url, dest=str(binary_path))
MozInstaller(src=str(binary_path), dest=str(self.testDir), dest_app="Nightly.app")
#now nightly is installed in
if sys.platform == "darwin":
binary_path = os.path.join(self.testDir,"Nightly.app")
runner = FirefoxRunner.create(binary=os.path.join(binary_path,"Contents","MacOS")+"/firefox-bin")
elif sys.platform == "linux2":
binary_path = os.path.join(self.testDir,"firefox")
runner = FirefoxRunner.create(binary=binary_path)
elif sys.platform == "win32" or sys.platform == "cygwin":
binary_path = os.path.join(self.testDir,"firefox.exe")
runner = FirefoxRunner.create(binary=binary_path)
else:
print "Your platform is not currently supported."
quit()
dest = runner.start()
if not dest:
print "Failed to start the downloaded binary"
verdict == "skip"
runner.wait()
if verdict == "skip":
pass
elif testcondition!=None:
#Support condition scripts where arg0 is the directory with the binary and tests
args_to_pass = [self.testDir] + args_for_condition
if hasattr(testcondition, "init"):
testcondition.init(args_to_pass)
#TODO: refactor to use directories with revision numbers
#8.2.11 - revision number can now be found in current_revision variable
tmpdir = tempfile.mkdtemp()
verdict = testcondition.interesting(args_to_pass,tmpdir)
#Allow user to return true/false or bad/good
if verdict != "bad" and verdict != "good":
verdict = "bad" if verdict else "good"
else:
try:
self.build()
except Exception:
print "This build failed!"
verdict = "skip"
if verdict == "skip":
pass
elif testcondition==None:
#Not using a test, interactive bisect begin!
self.run()
else:
#Using Jesse's idea: import any testing script and run it as the truth condition
args_to_pass = [self.objdir] + args_for_condition
if hasattr(testcondition, "init"):
#.........这里部分代码省略.........