Сервера раст - Добро пожаловать!

Подключайтесь к лучшим серверам Rust, играйте в раст прямо сейчас! Просмотрите статистику и текущих игроков, выберите свой путь в мире выживания на серверах Rust.

 server


Обсуждение на тему: Rust test

Комментарии ( 0 )

Сначала новые
Сначала старые
Сначала лучшие

Отправить
Загрузить
😀😁😂😃😄😅😆😇😉😊😋😌😍😎😏😐😑😒😓😔😕😖😗😘😙😚😛😜😝😞😟😠😡😢😣😤😥😦😧😨😩😪😫😬😭😮😯😰😱😲😳😴😵😶😷🙁🙂🙃🙄🤐🤑🤒🤓🤔🤗🤢🤣🤤🤥👿😈✊✋✌👊👋👌👍👎👏💪👂👃🖕🤙🤞🤘🙏❤💔🔥

Rust test

Lets look at the features rust provides specifically for writing tests that take these actions, which include the test attribute, a few macros, and the shouldpanic attribute. At its simplest, a test in rust is a function thats annotated with the test attribute. Attributes are metadata about pieces of rust code one example is the derive attribute we used with structs in chapter 5. To change a function into a test function, add test on the line before fn. Давайте рассмотрим функции предоставляемые в rust специально для написания тестов, которые выполнят все эти действия, включая атрибут test, несколько макросов и атрибут shouldpanic. В простейшем случае в rust тест - это функция, аннотированная атрибутом test. Вот что означают эти понятия юнит-тесты пишутся в том же файле, что и main.

Можно аннотировать их макросом test, а затем вызывать cargo test, как показано выше. Интеграционные тесты являются внешними по отношению к тестируемому коду. Simply invoking cargo test will run all the tests defined in the project. However, there is an alternative test runner called cargo-nextest which offers a cleaner test result interface and also runs faster. Проще говоря, тест в rust это функция, аннотированная атрибутом test. Атрибуты это метаданные о фрагментах кода rust одним из примеров является атрибут derive , который мы использовали со структурами в главе 5. Чтобы превратить функцию в тестовую, добавьте test в строку перед fn.

Когда вы запускаете свои тесты с помощью команды cargo test , rust создает двоичный файл запуска тестов, который запускает. Rust has a built-in test framework, so lets start by writing a first test fn answer() - i32 42 . Alright, how can we make this testable? Well need to capture the output somehow. Rusts standard library has some neat abstractions for dealing with io (inputoutput) and well make use of one called stdiowrite. This is a trait that abstracts over things we can write to, which includes strings but also stdout. Explanation in this example, we use the test annotation which is an attribute that indicates the test function, hence the test runner in rust treats this function as a test.

We use the asserteq! Macro so that the result of multiplying 5 and 5, equals 25. Once, we use the command cargo test, we can see in the output that there is a test running called to multiply the result which is ok which implies that the tests have successfully. We covered the structure of a test module in rust and how to construct a test function, and then we wrote a simple rust program and some test cases for it. We also covered failing tests and how to handle an expected failing behavior in the unit of code. With ui testing, you simply write a rust program that should fail to compile, and compiletest runs the compiler, writing the error output into a. .