Возможно, это не совсем специфично для rust, но тестирование через cargo настолько удобно, что хочется остаться с ним...
Я превращаю хорошо протестированное настольное приложение в wasm-приложение. После переноса IO выше по цепочке вызовов менять пришлось совсем немного, так что библиотека с кодом, составляющим wasm-приложение, в итоге остаётся хорошо протестированной.
Однако полное «приложение» включает и другие части, немного html и довольно много JS. Хотелось бы покрыть тестами всё это (в идеале в разных браузерах), но я не знаю, с чего начать (особенно как связать это с cargo test). Наверное, надо запустить веб-сервер... а дальше? Нужно заполнить html-форму, нажать кнопку отправки, а затем, вероятно, подтвердить загрузку и проверить правильность её содержимого.
Может, кто-нибудь подскажет, в каком направлении искать. Заранее спасибо!
Переведено с английского·Показать оригиналThis isn't necessarily specific to rust, although cargo makes testing convenient enough that I'd quite like to stick with it...
I'm taking a thoroughly tested desktop application and turning it into a wasm application. Once IO was moved higher in the call chain, very little code needed changing, so the library containing the code that makes up the wasm application remains thoroughly tested as a result.
The complete "app", though, includes additional pieces, with some html and a fair amount of JS. I'd like tests covering all of that (ideally across multiple browsers), but don't know where to start (especially with hooking it into cargo test). Presumably a web server has to be started... what comes next? A html form needs input, its submit button needs clicking, and a resulting download probably needs approving before its contents can be verified.
Could somebody suggest where I should start looking. Thanks beforehand!