Testing 如何测试Stencil.js状态更改?

Testing 如何测试Stencil.js状态更改?,testing,jestjs,state,stenciljs,Testing,Jestjs,State,Stenciljs,我试图弄清楚如何使用jest测试模具web组件中的状态更改。我对一般的测试是新手,我发现你可以用酶来测试React组件中的状态变化,但我还没有弄清楚如何用模板组件来测试。我该怎么做呢?通常,不建议您测试组件(状态)的内部逻辑,而是测试公共API(道具、事件) 但如果你想测试它无论如何,我建议你检查模具原始网站。若测试一个组件意味着测试它,那个么这意味着要测试一个普通javascript类的实例。因此,如果您的状态变量标记为private(这是一种最佳实践),那么您将无法编译它,因为TS将抛出编译

我试图弄清楚如何使用jest测试模具web组件中的状态更改。我对一般的测试是新手,我发现你可以用酶来测试React组件中的状态变化,但我还没有弄清楚如何用模板组件来测试。我该怎么做呢?

通常,不建议您测试组件(状态)的内部逻辑,而是测试公共API(道具、事件)


但如果你想测试它无论如何,我建议你检查模具原始网站。若测试一个组件意味着测试它,那个么这意味着要测试一个普通javascript类的实例。因此,如果您的状态变量标记为private(这是一种最佳实践),那么您将无法编译它,因为TS将抛出编译错误。因此,作为一个选项(也是我现在看到的唯一选项),您可以将这些状态成员公开,并在您的expects()中检查它们。

您仍然可以使用
实例['propertyName']
访问
私有的
类型脚本属性,如果您愿意,可以将结果强制转换为IModelType
,以便在测试中获得TS类型