我正在使用PyQt5 GUI的python(3.5)程序。在GUI中,我需要添加一些帮助链接到网站上的文档。我设法使其成功:
QDesktopServices.openUrl(QUrl("my_url"))
它工作正常,但我想确保它始终如此。
快速而脏的单元测试是调用该函数,只是注意到没有错误。我想做一个测试,检查是否显示了正确的网页。我该怎么用?
答案 0 :(得分:0)
检查错误根本不起作用,因为Qt本身从不引发错误(当然,Python或PyQt可能会这样做,但是出于完全无关的原因)。您可以做的最好的事情是检查openUrl
的返回值,这将返回True
或False
,具体取决于它是否成功"。但请注意openUrl的Qt文档中的以下内容:
警告: true 的返回值表示应用程序具有 成功请求操作系统打开一个URL 外用。外部应用程序可能仍然无法执行 启动或无法打开请求的URL。这个结果不会 报告回到申请表。
如果您想要更多控制权,我建议您使用Python的webbrowser模块。例如,这将允许您register您自己的模拟浏览器类以进行测试。 webbrowser
模块是用纯Python编写的,the code非常简单。