找回密码
 立即注册
楼主: kingmacth

开发插件怎么测试

[复制链接]

12

主题

55

回帖

1065

积分

论坛技术达人

积分
1065
金钱
948
HASS币
200

教程狂人

发表于 2019-8-12 17:08:05 | 显示全部楼层
你下载整个项目,然后写一个插件把插件放到components目录下,这样就变成了一个官方插件,然后用官方的测试用例方案就能直接跑起来了,例如:
import unittest
from time import sleep

from homeassistant.setup import setup_component
from tests.common import get_test_home_assistant

VALID_CONFIG = {
    'weather': {
        'platform': 'hf_weather',
        'name': "xxxx",
        'city': 'CN101210113',# CN101210113,auto_ip
        'appkey': 'xxxx',
    }}


class TestSiementsSensor(unittest.TestCase):
    """Test the sigfox platform."""

    def setUp(self):
        """Initialize values for this testcase class."""
        self.hass = get_test_home_assistant()

    def tearDown(self):
        """Stop everything that was started."""
        self.hass.stop()

    def test_valid_credentials(self):
        """Test for valid credentials."""

        assert setup_component(self.hass, 'weather', VALID_CONFIG)
        sleep(100)
        assert len(self.hass.states.entity_ids()) == 2
        state = self.hass.states.get('sensor.siemens_dock')
回复

使用道具 举报

12

主题

55

回帖

1065

积分

论坛技术达人

积分
1065
金钱
948
HASS币
200

教程狂人

发表于 2019-8-12 17:09:13 | 显示全部楼层
这样还能debug,要不然写个插件能累死。
回复

使用道具 举报

23

主题

279

回帖

2165

积分

论坛技术达人

积分
2165
金钱
1838
HASS币
110

活跃会员教程狂人

发表于 2019-9-10 12:41:32 | 显示全部楼层
VS Code单步调试方法可以看我的帖子~
博客 https://ljr.im
回复

使用道具 举报

2

主题

6

回帖

58

积分

注册会员

积分
58
金钱
50
HASS币
0
发表于 2021-3-21 19:41:32 | 显示全部楼层
原来没法打断点。。。只能LOG当日志。。
回复

使用道具 举报

175

主题

2794

回帖

7618

积分

超级版主

我就是六神

积分
7618
金钱
4624
HASS币
398

活跃会员教程狂人灌水之王

QQ
发表于 2021-4-1 23:25:07 | 显示全部楼层
xuyang 发表于 2019-7-2 14:19
开发插件需要搭设一个干净的ha,这样每次重启可以快一点。

确实是一种好方法
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2025-5-1 22:06 , Processed in 0.271581 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表