3 ms·
Can anyone comment on how useful this is for testing iOS and Android apps?
by amleszk 8y ago
Can anyone comment on how useful this is for testing iOS and Android apps?
- mahesh_rm 8y agoWhile I can easily see how this can be part of frontend development workflow, enabling "frontend-first" app development, TBH, I fail to see how this tool can be helpful for testing purposes. Something like http://www.apilope.com/ http://www.apilope.com/ or https://uptimerobot.com/ https://uptimerobot.com/ do test the real thing, rather than a simple collection of mock templates.
- Consultant32452 8y agoTwo totally different tools/purposes. Wiremock is not used to test your web service, it's mocking the web service so you can quickly code up your client work. In particular, this is useful if you will eventually be consuming web services which do not yet exist. You can quickly mock up some JSON/XML responses and hit them using real HTTP request and response.
- mahesh_rm 8y agoIndeed, you rephrased what I was saying. I fail to see how wiremock can help you "testing" your infrastructure (frontend in this case), as opposed to be saving you time during development of interfaces (use case that I can see it useful for).
- Consultant32452 8y agoI'm afraid I may not clearly understand what you mean by "testing" then. I worked on one project where we used Wiremock extensively. Development and QA was done against the mocks because the real target system did not exist yet. Everything from business logic to error handling and even load testing was done against wiremock. Even when the other system got up and running, some conditions were impossible to test without wiremock. For example, what if the web service we hit returns a 500 error? Well, the real system never did that in practice. But with wiremock we could do that whenever we wanted. Of course, we still had to do integration testing before going live, but wiremock saved us a TON of time for development and QA.
- mahesh_rm 8y ago"Development and QA was done against the mocks because the real target system did not exist yet." Wouldn't this be frontend discovery/development, rather than frontend testing? In this case, I recognize the tool can be useful. "For example, what if the web service we hit returns a 500 error?" Isn't this what development and staging environments are for? Not trying to be polemic/destructive, I just see building and maintaining mock api templates as a further overhead, when specific backend behavior can be simulated in an alternative deployment environment once a backend is in fact there. But maybe I don't fully understand the constraints posed by workflows other than mine! :-)
- Consultant32452 8y agoYou may not have any control whatsoever over the backend. You may not even have the ability to create data scenarios you want to test. Creating large/complex data scenarios is almost always more time intense than creating a mock. Honestly, creating simple data scenarios is almost always more time intense than creating a mock.
- tomakehurst 8y agoHi, WireMock creator here. Lots of folks use WireMock for Android testing. Definitely worth checking out Sam Edwards' blog and conference presentations on this, e.g. https://handstandsam.com/2016/01/30/running-wiremock-on-android/ https://handstandsam.com/2016/01/30/running-wiremock-on-andr...
- ascorbic 8y agoI've no idea why, but all of your comments were dead. I've vouched for them, so hopefully people will be able to see them now. Seems a bit silly to have the author in the thread, but all of his comments hidden!
- tomakehurst 8y agoStrange. I could see them OK. Thanks for vouching (assuming you can see this one)!
- ascorbic 8y agoYou can always see your own comments. I have "show dead" enabled, but that comment was fine anyway.
- tomakehurst 8y agoMore generally, it's useful for mobile development in the following scenarios: * The back-end API you depend on isn't ready yet * The back-end test server is slow, flakey etc. * You want to test scenarios you can't easily make happen on demand like slow responses, 503 errors, dropped connections etc. Worth mentioning that even if you're not driving WireMock from Java (or another language binding), you can run it on your laptop or a server from a bunch of JSON files. This makes it usable with e.g. iOS apps. Alternatively you can use https://www.mocklab.io https://www.mocklab.io, which is 100% compatible, but hosted, has a UI etc.
- usrusr 8y agoCan be very useful when your testing is troubled by permanently changing backend data or when some cases are hard to get examples of. Imagine writing a front-end to a third party weather API: recording gets you repeatable examples and slightly edited copies of those recordings allow you to check unobserved extremes without manually mocking out the whole thing.
- Serow225 8y agoHere's a really good video talk of some real-world mobile testing: https://www.youtube.com/watch?v=8hK_BQVqvZ0 https://www.youtube.com/watch?v=8hK_BQVqvZ0
- Serow225 8y agoAlso this video talk: https://www.youtube.com/watch?v=-xQCNf_5NNM https://www.youtube.com/watch?v=-xQCNf_5NNM