# 顺序规格 为了确认算法实现了正确的顺序行为, 你可以为测试数据结构编写一个简单的顺序化实现, 用来定义算法的 顺序规格(sequential specification). > **Tip:** > 使用这个功能, 你只需要编写单个测试, 而不必分别编写顺序测试和并发测试. 要指定需要验证的算法的顺序规格, 你需要: 1. 实现一个所有测试方法的顺序化版本. 2. 将带有顺序化实现的类传递给 `sequentialSpecification()` 选项: ```KOTLIN StressOptions().sequentialSpecification(SequentialQueue::class) ``` 例如, 这里是一个测试, 它检查 Java 标准库的 `j.u.c.ConcurrentLinkedQueue` 类的正确性. ```KOTLIN import java.util.* import java.util.concurrent.* import org.jetbrains.lincheck.* import org.jetbrains.lincheck.datastructures.* import org.junit.* class ConcurrentLinkedQueueTest { private val s = ConcurrentLinkedQueue() @Operation fun add(value: Int) = s.add(value) @Operation fun poll(): Int? = s.poll() @Test fun stressTest() = StressOptions() .sequentialSpecification(SequentialQueue::class.java) .check(this::class) } class SequentialQueue { private val s = LinkedList() fun add(x: Int) = s.add(x) fun poll(): Int? = s.poll() } ``` > **Note:** > [请在这里查看示例的完整代码](https://github.com/JetBrains/lincheck/blob/master/src/jvm/test-lincheck-integration/org/jetbrains/lincheck_test/guide/ConcurrentLinkedQueueTest.kt).