1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2025-11-29 08:57:20 +02:00
Files
comprehensive-rust/tests
michael-kerscher d1899de233 tests: Migrate create_slide.list.sh into cargo xtask function. (#2957)
The new xtask function makes the helper code
- more readable
- more reliable due to better error checking
- be in the same place as other helper functions
- and more aligned to the skillset relevant for contributing in this
repository.

The shell script grew and was not readable for everyone anymore without
deeper knowledge.

mitigates #2941 in a more reliable way but does still not fully fix the
root cause
2025-10-29 18:15:21 +01:00
..

Testing Comprehensive Rust

The course material contains JS code that can break and needs to be checked for functionality. Examples are theme/speaker-notes.js or theme/book.js.

Comprehensive Rust is using webdriverIO and the webdriverIO Expect API in combination with Mocha. WebdriverIO is taking care of accessing the webpage with a real browser and can access the state of the page so behavior can be asserted.

The Static Server Service is used mainly in the CI to serve the book on port localhost:8080 such that the test runner can access it. This mode is used when npm start or npm test is executed.

Tip: Use cargo xtask web-tests to run the tests in this directory from anywhere in the repository.

For local testing and quick iterations it is possible to use mdbook serve which creates a small HTTP server on port 3000 by default. There is a special config that is invoked with npm run test-mdbook that uses http://localhost:3000