简体   繁体   中英

How to test Subversion functions?

I am implementing an application that involves some svn functions.

I'm gonna write some unit tests for the app, however, how would you suggest I write unit tests for svn commands such as checkout, update, status, etc?

Thanks!

Wrap your SVN-specific code within a class, implementing an interface. When unit testing your main application, stub/fake/mock/whatever your SVN class via the interface. You can then unit test most of your application this way.

Testing the actual SVN interaction will not be a unit test, but rather an integration test. You can write your test cases directly to your SVN implementation.

You could:

  • Use a stub instead of the real svn command; the stub could log its invocations and, at the end of the test, you can check that svn has been invoked as you intended (this is more like a mock than a stub).
  • Create a "sandbox" repository in a temporary directory and perform actual operations on it, like I did in this answer .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM