Cypress
逃生舱
https://docs.cypress.io/api/events/catalog-of-events.html#Uncaught-Exceptions
由于antd的一些写法,或者一些实现,尤其是虚拟类的实现,可能没有实现标准dom的一些规范,所以会在测试操作中出现异常错误,可以通过这种异常掠过的方式,来保证流程安全
image.png
而且这里的scroll也必须要加easing:linear,也就是采取一点一点累加滚动的方式,猜测也是跟虚拟滚动的实现有关,无法直接通过scrollXX操作元素,或无法获取正确的最大滚动范围导致的。

测试某项不会被匹配到
should(‘not.exist’)
image.png

权限状态留存
在每个it前都需要重新登录,似乎每个it间的storage都是隔离的。
image.png

SICP

1.1.1
名称
interpreter 解释器
expression 表达式
statement 语句
left-associative 左关联

an expression statement, which consists of an expression followed by a semicolon.
js中的表达式语句就是:一个表达式,后跟一个分号

One kind of primitive expression is a number.
数字就是一种最基础的表达式
image.png

Expressions such as these, which contain other expressions as components, are called combinations.
组合就是被放置在一起的表达式表达式

Combinations that are formed by an operator symbol in the middle, and operand expressions to the left and right of it, are called operator combinations.
运算符组合:运算符号在中间,左右是操作数表达式。
image.png

The convention of placing the operator between the operands is known as infix notation.
中缀表示法:在操作数中间放置操作符的一种公约(就是大家都这么约定来操作数)

We say that the operators +, -, * and / are left-associative.
常见的数字表达式都是左关联(从左往右读)

Even with complex expressions, the interpreter always operates in the same basic cycle: It reads a statement typed by the user, evaluates the statement, and prints the result. This mode of operation is often expressed by saying that the interpreter runs in a read-eval-print loop.
解释器的基本操作模式周期:读取-计算-打印