Testing routine before using module upgrades on live sites

General project discussion. NOT for help questions.
Locked
10010110
Translator
Translator
Posts: 200
Joined: Tue Jan 22, 2008 9:57 am

Testing routine before using module upgrades on live sites

Post by 10010110 »

Do you guys have any particular routine for testing third-party module upgrades before you use them on live sites? And what’s your general approach with maintaining sites that you’ve build for clients? Do you upgrade modules/CMS regularly or don’t care at all after you’ve finished the site?

I’ve been developing sites with CMS Made Simple for a few years now and now it’s getting back at me and bites me in my a**. On an old site that I developed in 2011 the host has changed something on their server in the meantime (PHP version, for example), and suddenly the client came to me and asked me for help because things stopped working. It was a real pain in the ass to upgrade a three year old site with a lot of modules (calguy’s e-commerce suite being the worst because of its complexity).

And as I developed more and more sites with the CMS I came to realize that maintaining and upgrading those is becoming quite a laborious and time-consuming task for which I need to develop a somewhat standardized routine. For example, just today, an upgrade to Front End Users came out. What do I have to consider in terms of testing to make sure no surprise call from a client comes up? Of course it’s best to test stuff on a local installation but, to get back to FEU, what steps would I take? Log in and out a frontend user once and if that works all is good? Or is there anything else?

And calguy’s e-commerce modules are a real pain in the butt when it comes to testing upgrades. I’m sure things are different with every module but do you have general recommendations and perhaps specific ones for specific modules?
User avatar
Dr.CSS
Moderator
Moderator
Posts: 12709
Joined: Thu Mar 09, 2006 5:32 am
Location: Arizona

Re: Testing routine before using module upgrades on live sit

Post by Dr.CSS »

For testing a do a subfolder copy of the site "site.com/dev"...

Export existing DB, make new DB in cPanel, import DB...

Pack existing site files/folders, unpack into dev folder, and change path and DB info in config.php, if the site uses 'pretty URLs' add the RewriteBase / to the .htaccess file...
User avatar
paulbaker
Dev Team Member
Dev Team Member
Posts: 1465
Joined: Sat Apr 18, 2009 10:09 pm
Location: Maidenhead, UK
Contact:

Re: Testing routine before using module upgrades on live sit

Post by paulbaker »

10010110 wrote:Do you upgrade modules/CMS regularly or don’t care at all after you’ve finished the site?
....
It was a real pain in the ass to upgrade a three year old site with a lot of modules
....
I’m sure things are different with every module but do you have general recommendations and perhaps specific ones for specific modules?
Interesting topic and I agree that upgrading can be a PITA.

I generally include hosting for the first year with my web development and as part of that hosting I upgrade CMSMS as new versions come out (not religiously every time but, say, every 6 months). Clients generally don't care about upgrading - until something stops working.

Don't forget (like I do) that there are often release notes for new versions of modules. See the "Changelog" links on a page like this one (for Gallery in this case):
http://dev.cmsmadesimple.org/project/files/726
They give you a good idea of what has changed so well worth checking.

I don't think there is an easier way than upgrade and test, test, test. If there is an easier way then I want to know about it. :D
10010110
Translator
Translator
Posts: 200
Joined: Tue Jan 22, 2008 9:57 am

Re: Testing routine before using module upgrades on live sit

Post by 10010110 »

Thanks guys.
DrCSS, I’m well aware of the staging vs. live server thing and that’s what I’m already doing, of course. The problem for me is that you can never test all applications of a module. Let’s say there is an update for CGExtensions on which many other modules are depending. You have to check every module that depends on this one for potential errors. Or, let’s say there is a new version of a Gallery module for which you have created custom templates within which you are also using CGSmartImage module tags. It doesn’t always suffice to look at the galleries, you also have to simulate an actual workflow (and in case of e-commerce you have to simulate a full order process, perhaps even with payment gateway sandbox mode or things like that) to see if everything is working alright; that’s just insane, especially if you have a lot of modules and there are a lot of upgrades available.

And unfortunately changelogs or release notes aren’t always very verbose (if existing at all).
Locked

Return to “General Discussion”