# singer-tap-development


10/18/2021, 8:43 AM
Saw @matt_arderne's question about the developer workflow. It would be great to share how everyone goes about this and any SDK pieces that I might be missing. 1. Development: I prefer to setup build and test targets when I'm going through development cycles - in the past I was creating Makefiles like this ( Which creates a virtual environment to run / test in. This all looks simpler with Poetry - time to give it a try! 2. Testing: Usually I write tests that mock the http responses and assert the important things like expected transforms, errors from the api, authentication, etc. Development for me usually looks like first 25% manual did the thing work, then 50% write tests, assert all the corner cases, then final 25% back to an end to end system integration test. 3. Integration testing: once the taps are working I write an end to end that meltano inits, add, elt, dbt (if any), then asserts some real data was fetched.