Remi-自动转换Python代码为HTML界面的GUI库

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客文章浏览阅读2.3k次,点赞85次,收藏11次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口测试、性能测试、自动化测试、安全测试及一些常问到的人力资源题目。最主要的是他还收集了像阿里、华为这样的大厂面试真题,还有互动交流板块……https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.55021、简介

Remi 使开发人员能够使用 Python 创建独立于平台的 GUI。整个 GUI 在浏览器中呈现。不需要 HTML,Remi 会自动将 Python 代码转换为 HTML。当你的应用程序启动时,它会启动一个可以在你的网络上访问的 Web 服务器。

安装:

pip install remi

2、快速上手

1、示例代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 公众号:AllTests软件测试

import remi.gui as gui
from remi import start, App

class MyApp(App):
    def __init__(self, *args):
        super(MyApp, self).__init__(*args)

    def main(self):
        container = gui.VBox(width=120, height=100)
        self.lbl = gui.Label('AllTests软件测试')
        self.bt = gui.Button('请点击!')

        # 为按钮的 onclick 事件设置侦听器
        self.bt.onclick.do(self.on_button_pressed)

        # 将一个控件附加到另一个控件,第一个参数是一个字符串键
        container.append(self.lbl)
        container.append(self.bt)

        # 返回根窗口部件
        return container

    # 监听器函数
    def on_button_pressed(self, widget):
        self.lbl.set_text('按钮已按下!')
        self.bt.set_text('感谢关注!')

# 启动 Web 服务器
start(MyApp, address='127.0.0.1', port=8081)

运行脚本,浏览器会自动打开 GUI,或者手动打开浏览器,地址栏中输入 http://127.0.0.1:8081 即可。

如下图:页面显示效果。

如下图:点击后的显示效果。

也可以通过在 start 函数调用中指定 **kwargs 来更改 URL 地址。

在 Android、Linux、Windows 上进行了测试。可用于 Raspberry Pi 上的 Python 脚本开发。它允许从移动设备远程与 Raspberry Pi 进行交互。

2、在 start 调用中自定义可选参数,例如:

start(MyApp, address='127.0.0.1', port=8081, multiple_instance=False, enable_file_cache=True, update_interval=0.1, start_browser=True)

参数:

  • address:网络接口 IP。

  • port:监听端口。

  • multiple_instance: 布尔值,如果为 True,则连接到你的脚本的多个客户端具有不同的 App 实例(由唯一的 cookie 会话标识符标识)。

  • enable_file_cache: 布尔值,如果为 True,则启用资源缓存。

  • update_interval: GUI 更新间隔(秒)。如果为零,则每次更改时都会进行更新。如果为零,则不会调用 App.idle 方法。

  • start_browser:一个布尔值,定义启动时是否自动打开浏览器。

  • standalone:布尔值,指示将应用程序作为具有自己的窗口的标准桌面应用程序运行的位置。如果为 False,则界面将显示在浏览器网页中。

其他参数:

  • username:用于基本 HTTP 身份验证。

  • password:用于基本 HTTP 身份验证。

  • certfile:SSL 证书文件名。

  • keyfile:SSL 密钥文件。

  • ssl_version:身份验证版本(即 ssl.PROTOCOL_TLSv1_2)。如果为 None,则禁用 SSL加密。

3、HTML 属性可访问性

有时需要访问小部件的 HTML 表示,以便操纵 HTML 属性。该库允许轻松访问此信息。

一个简单的例子:你想在小部件中添加一个悬停文本,可以通过 HTML 标签的 title 属性来实现。

widget_instance.attributes['title'] = 'Your title content'

HTML 属性的一种特殊情况是 style。style 属性可以通过以下方式进行更改:

widget_instance.style['color'] = 'red'

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群: 786229024,里面有各种测试开发资料和技术可以一起交流哦。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】在这里插入图片描述
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述
在这里插入图片描述

在这里插入图片描述