Reputation: 3928
We have Rails 2.3.4(ruby 1.8.7) app which is big?(300 Models with 21,000 LOC and 75 controllers with 35,000 LOC) with moderate complexity and we are planning to upgrade this app to Rails 3.2(or Rails 4.X)
Now the biggest hurdle is we don't have a single test case!
I searched around the web, stackoverflow and I did find some usefull links but all of them assume that app will have good test coverage But in our case its not true so considering all that in mind, I have following questions ?
Lets assume even if we write test cases now(for rails 2.3) will those tests run smoothly on updated version ? or do we need to write fresh test cases on upgraded Rails version ?
I know estimating is bit hard but still does anyone tried upgrading
your bigs apps and how much time it took ?
considering all the above what are the best strategies we should follow ?
Any pointer to relevant blogs and suggestion are welcome.
Thanks in Advance.
Upvotes: 0
Views: 216
Reputation: 157
First, you will definitely upgrade to Rails 3 with Ruby 1.9. In our case, we had a large application, and moving from Ruby 1.8.7 to 1.9 was far less work than moving from Rails 2.3 to 3.0. It took us a couple months to get on 1.9, but over a year to get on Rails 3.0
Then you upgrade to Rails 4 with Ruby 2.0. Its not easy way to upgrade,but will definitely improve application performance.
Upvotes: 0
Reputation: 19899
If it were me, I'd bite the bullet and write tests for 2.3 now. A lot of it will transfer over, some of it won't. Once written, upgrade the app to 4.x and see what breaks. Then figure out if it's the code or your tests and adjust accordingly.
Without tests... I have no advice :/
Upvotes: 1