标签: squish

Qt的Squish替代品

我正在寻找一个与Squish类似的应用程序.

我希望它能够测试Qt应用程序,可能是一个免费/开源应用程序,可能有访问Qt API和脚本语言如Python用于手写测试用例.

python qt automated-tests squish

13
推荐指数
1
解决办法
5420
查看次数

使用 findObject() 或 waitForObject() 按 id 或 objectName 获取 Squish 中的 QML 元素,无需对象映射

如何使用findObject()waitForObject()不使用对象映射通过 id 或 objectName 获取 QML 元素?甚至有可能吗?

考虑:

Item {
    id: page
    objectName: "pageObject"

    Text {
        id: foobar
        objectName: "lorem"
        text: "ipsum"
    }
}
Run Code Online (Sandbox Code Playgroud)

我想在测试脚本中访问 foobar 的文本,例如:

obj = findObject("foobar")
if obj.text == "ipsum":
    test.passes("all good")
else:
    test.fail("uh oh")
Run Code Online (Sandbox Code Playgroud)

我也试过:

obj = findObject("lorem")
obj = findObject("{name='lorem'}")
obj = findObject("{name='lorem' type='Text'}")
obj = findObject("{objectName='lorem'}")
obj = findObject("{objectName='lorem' type='Text'}")
Run Code Online (Sandbox Code Playgroud)

python qml squish

5
推荐指数
1
解决办法
2690
查看次数

在每个测试用例之后,Squish关闭我的应用程序

测试工具Squish在每个测试用例后关闭我的应用程序,我该如何避免?我甚至取消选中"自动启动AUT"并使用startApplication()启动应用程序.我也试过了attachToApplication()方法而没有成功!

非常感谢我的朋友

马丁

javascript testing squish

3
推荐指数
1
解决办法
3208
查看次数

如何更改Squish中waitForObject函数使用的默认超时

用于waitForObject的函数如下.我希望每次使用此功能时它都会等待默认的秒数.

def login():
    type(waitForObject(names.login_lineEditUserId_QLineEdit), "786")
Run Code Online (Sandbox Code Playgroud)

python qt automated-tests squish

3
推荐指数
1
解决办法
257
查看次数

如何在没有 X 服务器的情况下通过挤压运行 GUI 测试

我也有同样的疑问……如何在后台运行测试用例来测试 AUT,以便我可以在我的机器上处理其他一些任务。虽然在 squish 中的测试运行着如此多的弹出窗口,并且 AUT 功能不断出现在您的屏幕上,并且在您处理其他事情时很烦人。

squish

2
推荐指数
1
解决办法
1448
查看次数

将 x,y 坐标从一种屏幕尺寸和分辨率外推到其他屏幕尺寸和分辨率

快点我有什么!!我有一个定义的屏幕尺寸(5.5 英寸)和分辨率(500 像素宽度和 350 像素高度),并且我在这个屏幕上有某个位置(x,y)的坐标。

我会有什么!!我将有新屏幕尺寸(8.2 英寸)和分辨率(1020 px 宽和 730 px 高)的规格。

我需要计算/推断/查找什么?我需要在具有新分辨率的新屏幕尺寸上找到相同的 x,y 位置。而且我需要一个可以在任何屏幕尺寸或分辨率上工作的通用解决方案。

任何人都可以帮我解决这个问题。

screen device coordinates squish extrapolation

2
推荐指数
1
解决办法
5820
查看次数

将 sqlite3 数据库连接/存储在默认目录以外的指定目录中 -- "conn = sqlite3.connect('name_of_database')"

我正在使用 Sqlite3 数据库尝试从与最初创建的目录不同的目录访问其数据。

我在 Squish GUI 自动化 IDE 中运行的 python 脚本(测试用例)位于一个目录中

C:\Squish_Automation_Functional_nVP2\suite_Production_Checklist\tst_dashboard_functional_setup

在那里,我在同一个脚本中创建了一个包含下表的数据库:

def get_var_value_pass():
    conn = sqlite3.connect('test_result.db')
    c = conn.cursor()
    c.execute('CREATE TABLE IF NOT EXISTS test_result_pass (pass TEXT,result INTEGER)')    
    c.execute("INSERT INTO test_result_pass VALUES('Pass', 0)")
    conn.commit()  
    c.execute("SELECT * FROM test_result_pass WHERE pass='Pass'", )       
    pass_result = c.fetchone() 
    test.log(str(pass_result[1])) 
    test_result = pass_result[1] 
    c.close()
    conn.close()       
    return test_result
Run Code Online (Sandbox Code Playgroud)

现在我想访问我以前通过“conn = sqlite3.connect('test_result.db')”在另一个位于不同目录中的测试用例中创建的同一个数据库

C:\Squish_Automation_Functional_nVP2\suite_Production_Checklist\tst_Calling_In-Call-Options_Text_Share-Text_Update-Real-Time

问题是,当我尝试对同一个数据库执行 select 语句时——在不同的脚本(测试用例)中,如下所示:

def get_var_value_pass(pass_value):
    conn = sqlite3.connect('test_result.db')
    c = conn.cursor()
    c.execute("SELECT * FROM test_result_pass WHERE pass='Pass'", )  
Run Code Online (Sandbox Code Playgroud)

一旦我尝试 c.execute("") 语句,我的测试就会失败,因为找不到表。相反,最近的“conn = …

python sqlite automated-tests squish

2
推荐指数
1
解决办法
5852
查看次数