我在Win7 x32上使用SoapUI Pro 5.1.2,并尝试在Groovy TestStep中连接到Selenium Webdriver.
为此,我selenium-standalone-server.jar
在$SOAP_HOME$\bin\ext
文件夹中添加了v2.45.0 .
我的Groovy TestStep代码:
import org.openqa.selenium.WebDriver
import org.openqa.selenium.chrome.ChromeDriver
System.setProperty('webdriver.chrome.driver', 'C:\\\\Windows\\system32\\chromedriver.exe')
log.info(System.getProperty('webdriver.chrome.driver')) //got 'C:\\Windows\system32\chromedriver.exe'
WebDriver driver = new ChromeDriver() // this line causes error
driver.get('http://google.com')
driver.quit()
Run Code Online (Sandbox Code Playgroud)
当我尝试运行此步骤时,SoapUI返回消息:
org.openqa.selenium.remote.UnreachableBrowserException:
Could not start a new session.
Possible causes are invalid address of the remote server or browser start-up failure.
Build info:
version: '2.45.0',
revision: '5017cb8',
time: '2015-02-26 23:59:50'
System info:
host: 'SmithPC',
ip: '10.0.2.15',
os.name: 'Windows 7',
os.arch: 'x86',
os.version: '6.1',
java.version: '1.8.0_45' …
Run Code Online (Sandbox Code Playgroud) 我有一个模型,它应该在初始化时转换一些字段。我尝试过使用sqlalchemy.orm.reconstructor
,但遇到了模型自动刷新的问题(或误解)。
这是我的模型的示例:
\n\nfrom app import db\nfrom sqlalchemy.orm import reconstructor\n\nt_model = db.Table(\n \'models\', \n db.metadata,\n dbc.Column(\'id\', db.Integer, primary_key=True),\n dbc.Column(\'value\', db.String)\n)\n\n\nclass Model(db.Model):\n\n __table__ = t_order_data\n\n def __init__(self, value)\n self.value = value\n\n @reconstructor\n def init_on_load(self)\n """cast to None if value is empty string"""\n self.value = None if not self.value else self.value\n\n def run_db_function(self)\n try:\n result = db.session.execute(db.func.somefunc(\'some_param\')).fetchone()\n except Exception:\n db.session.rollback()\n raise\n else:\n db.session.commit()\n return result\n
Run Code Online (Sandbox Code Playgroud)\n\n我的代码做了什么:
\n\nmodel = Model.query.get(1) # in table this row is id=1, value=\'\'\n …
Run Code Online (Sandbox Code Playgroud)