Automated testing WordPress - wordpress

I am working on a WordPress site for a client that averages 300 - 1500 users daily (these numbers will double five months of the year). They have been consistently bringing up bugs on the site that need fixed.
I am curious if automated tests are worth it for a site this small? If so, any suggestions on what to use? I am leaning towards something like Selenium for functional testing, not unit tests. Suggestions welcome. Thanks.

Here are my thoughts on this (as someone who was considering it for a new Wordpress site):
Consider what you hope to accomplish by testing. In my case, I have a static main page, a static page with a list of resources (links to external sites), and a blog page. If I am going to test this with Selenium, I am not going to worry much about tests of functionality - there isn't any. But I am going to be concerned about the appearance of the site, which Selenium isn't good at testing. For appearance, I need eyes on the site looking for issues.
You mention that your users "have been consistently brining up bugs on the site that need fix[ing]" - what kind of errors?
If the errors are related to functionality (eg. when I click on button X, I get Y when I should get Z), you will probably be able to test that with Selenium. This might be the sort of error that #mathieu-vezina was alluding to: if you have multiple plugins that are conflicting, writing Selenium tests will help you identify when these conflicts are happening. However, this is probably something you could figure out without Selenium and if there are problems with third-party plugins, you're at the mercy of the developers when it comes to bug fixes. So Selenium tests will probably not be much help here.
If the errors are related to appearance (eg. the elements are the wrong shade of pink and shifted up too much), you will not be able to test that with Selenium.
Keep in mind too that it takes a fair amount of work to write Selenium tests and the maintain them - in most cases, the benefit is going to be too small to justify the amount of effort.

I personally do not think it is worth testing your wordpress site if you do not use several plugin and you only have between 1000 and 10000 users. If you use several plugin, I recommend you to read this article to make sure they will not affect your website : https://woocommerce.com/2015/08/evaluate-plugins-woocommerce/
Also, Selenium have few limitations, for example, it is restricted to only Firefox and it lacks the ability to scale well, so you will not test all functionality.

Related

Wordpress Speed up page on mobile

I noticed that my page/onlineshop seems to load quite slowly on mobile. I already optimized anything I could in the past and always get a 95-100 lighthouse score on desktop which is great I guess. Still I cant manage to get it above 60-70 on mobile and I think thats too slow?
Unfortunately I'm not very experienced and have absolutely no idea where the problem is located. I would be very very thankful if someone could take a look and maybe give me at least a direction where I should focus on.
https://gesundbaumarktshop.de/produkt/auro-gartenmoebeloel-nr-102/ for example but basically any product has the same issue
i will recommend you reduce all your website image. that will help alot
Overall, your page size is fine. Lighthouse is also not the end all be all for testing and I tend to use 2-3 services to test speeds.
However, CDNs may make a huge difference along with server side caching.
If you are able to, I'd recommend running your DNS through Cloudflare. They actually have a plan specifically for WordPress that is $5 USD roughly a month?

How to migrate a WebYep website to Wordpress?

I had a website which was built using the CMS WebYep. Now I want to shift it to WordPress. Can anyone tell me how to do that?
Thanks is advance :)
Regards,
Ryan
I'm afraid there is no automatic process for most CMS.
You can either do it manually, or write a program (or hire somebody to write it) to help do the job.
In most cases the manual way is preferred. Different content management systems work quite differently, so there's usually not a universal way to set things up. Recognizing the differences and how to achieve a similar result is an easy thing to do for a human but a very hard thing to do for a computer. Plus, from my experience, with a relaunch usually comes a re-structuring. When you're moving to a new house, you might just get rid of that old broken sofa while you're at it, basically.
When you have a very large website with lots of similar content, a developer can certainly write scripts to aid in the process of moving your content over to WP. This will usually not be cheap, so it's not a smart idea for a site that consists of a dozen pages or where the content isn't very homogenous.

Seeking opinions on the best CMS platform for designers and front end developers

I have so far been a dedicated Wordpress user, but have been researching other CMS solutions of late, specifically, looking for something that could potentially allow me to EASILY convert an XHTML site into a CMS site for most projects.
I don't care for PHP - and find adding the appropriate tags to Wordpress a bit of a challenge. I am building fairly simple sites and simple blogs - I don't need a lot of extensibility.
I have heard good things about ModX and Textpattern and have today installed them on a localhost and started playing with them. Each has a bit of a learning curve, but I like what I see in terms of their tag codes (which looks a lot more like html than php).
I'd like to design websites where most pages are distinct from one another and don't necessarily have to fit into a template. I am looking for an automagical solution where I can directly input my html, css, javascript code into a CMS platform and it spits out my website exactly as I'd imagined it. Is this just a dream?
With so many solutions out there, just wondering about other web designer's and non-hardcore developers preferences?
I guess it's like asking if ipod or blackberry or n900 or htc etc.
While there are vast differences in how it works under the hood, for the most part you can expect about the same functionality, and it comes down to the provider and a particular feature you prefer in one over the other. In this case instead of your carrier you need to worry about you host, whether they offer the php version required aand the database you need etc. But for most part, you should be fine.
Modx Evo requirements : http://modxcms.com/learn/general-requirements.html
Modx Revo requires: http://rtfm.modx.com/display/revolution20/Server+Requirements
TextPattern requirements: http://textpattern.com/about/119/system-requirements
I find this an important thing to start with, while my server can handle either, you never know what server your clients are running(there still are some old configurations out there)
I haven't used Revo much yet, but it looks like there are quite a few really nice enhancements. One of them is installing packages. Previously you have to create TVs snippets chunks, so installing a package wasn't always so straight forward.
Modx Evo however has the import html feature, where you can load put your html site in a folder set the tag that holds the content, and modx will automatically create and fill the resources(pages), pretty nifty, but I've only used it to see what it does :)
Modx lets you get away with not knowing any php, but as your requirements change, you might find yourself needing an extra feature of script that is easy to add. I've found that using modx for the past 2 years or so has vastly improved my php abilities because of these additional functions required.
While I haven't worked with textpattern much I do remember installing it and playing around, but it just wasn't love at first sight, like with modx.
I also think modx is pretty easy for clients to navigate with some minimal coaching, but that is more of a comparison with joomla and drupal etc.
Bottom line, I think few people have spent enough time with both to REALLY understand both in terms of differences/advantages and mostly what you'll get is "the one I use is better; evidence being me using it" (myself included) or worse yet "I see you're mentioning CMSes, here's my favorite one"
To wrap up, one more important aspect (and this one is really important if you don't know your way around backends and php much) the community. If you run into problems, how likely is the modx vs textpattern forum.community willing to help. A good indication is community size. While I can't see the numbers for textpattern, currently modx forums show "255 Guests, 46 Users (3 Hidden)"
good luck
If you're comfortable with HTML then Textpattern's method of adding markup like tags into templates for content will probably be relatively straightforward for you to pick-up. The biggest issue most people seem to have in understanding Textpattern is its semantic model, there's a great page on the semantic model on Textpattern's Textbook site that should help.
I'm a big fan of Textpattern for building simple but powerful small to medium sites that do not require complicated user groups. It's quick to build well designed sites and the admin interface is really simple.
The Textpattern community is extremely friendly and helpful if you ever need help. Best place to ask things is on the Textpattern Forum.
You may want to consider sNews CMS in addition to MODx/Textpattern. It is quite minimalistic
PHP code is single file (excluding language translations).
You need to import one SQL script on phpMyAdmin and you are set.
After that its only styling and content.

Umbraco, is it just me or is it really hard to use? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Looking for some feedback on those of you who have evaluated umbraco lately.
I've been on a quest for the 'best' cms that balances ease of use/extendability/customization etc. to use as a base for a new vertical product I am in the planning stages on, so for the past month or so I have been downloading, installing, reading source code and creating test sites in every asp.net cms I can get my hands on - and so far I have pulled down GraffitCMS, MojoPortal, Oxite, Orchard, Kuboo and maybe a couple of others that I am not remembering of the top of my head.
For each of those, except Umbraco, I have been up and running in less than a couple of hours, including adding pages, customizing templates, and in some cases (especially Graffiti), writing drop in widgets in C# in a matter of just a few hours....
But with Umbraco, after wrestling it for almost 2 days just getting it to run, and now another morning watching videos, and then building pages etc, I am still unable to even get even a simple site operational, and even the pages I have gotten working crash routinely (not to mention being a dog)...
So, the question is: Am I doing it wrong? or is it really that hard to work with? and more importantly, if I continue to push forward, will it be worth it? or do I cut my losses and move on?
Edit: asp.net with SQL Server support are requirements of anything I pick.
UPDATE ONE YEAR LATER (Feb/2011):
My initial impressions are still accurate, Umbraco is different than most of the other CMS's that I have used in the past, and for me took a bit longer than usual to 'get it', but now that I have, I have to say I have a much better appreciation of the product, what it does, and how it does it - and to top it all of, it really performs really well - especially with the latest release of 4.6.1. So call me a convert - I am glad I stuck it out and then took another look. I only update this post now, over one year later so as not to leave my initial negative 'review' here for posterity.
The learning curve for umbraco is short but steep. Once it all 'clicks' then you'll be up and running in short order.
It's different from other CMS platforms in that you doesn't give you anything out of the box - just a blank canvas to work with. Other cms systems will set you up with a default template and allow you to drop in pre-built functionality. Umbraco is, by design, not like that at all. You only get out what you put in, it doesn't generate anything for you.
This is ideal for developers and designers who want 100% control over their code/markup.
Version 4.7 (currently in release candidate) introduces the Razor syntax for creating macros. This does away with needing XSLT+XPath which I think was a big stumbling block for a lot of people. Even if you're not familiar with Razor, it is much intuitive to learn than the XML based offerings.
The videos have been mentioned by other posters below. $20 is a small price to pay to get up and running quickly.
Does it matter? What I mean is, if you find it hard to use, and there are other alternatives available, why persist? If it's non-intuitive to you, then you're going to find it hard to use. If it doesn't have some killer feature you (think you) need, dump it and move on. You don't need the hassle of trying to wrap your head around some oddly-designed (to you) product, and the product's developers don't need the hassle of trying to support people who think their product should work in some way it wasn't designed to.
None of this is intended to be harsh, just practical. You have the freedom to choose, so choose what works best for you. This sounds like it isn't working, so move on. My brother-in-law wanted to buy a Volvo, but found the controls and dashboard totally confusing, so he wound up with a BMW instead. Nothing wrong with the Volvo, nothing wrong with my brother-in-law, just cognitive dissonance. Don't worry about it.
I've been building sites with Umbraco for something like 5 years now, and I don't recognize your description of Umbraco as a very difficult CMS, but I'll try to provide a few pointers here to help you if you're still considering Umbraco:
Go to http://our.umbraco.org, read the Wiki-pages, and post any questions in the forums there, it's a really friendly community.
Always use Microsofts Web Platform Installer when installing Umbraco, It'll help you create your site, and set up your database. Just be sure not to install Umbraco in a sub/virtual directory, since Umbraco can't handle a setup like that.
If possible, do your install on a development machine with IIS7 and SQL Server Express, it'll work for sure, and deployment of a finished site can be done with a xcopy transfer and a restore of a database backup.
Don't start a new Umbraco site, before you've coded the HTML you'll be using for the site, or at least have a really clear idea about the page types, and html content you'll need.
I hope I'll be seeing you on the Umbraco forums.
Regards
Jesper Hauge
As a grizzled CMS veteran I can say that Umbraco is no harder to set up and use than many other CMS solutions.
However much of whether you find it hard or easy depends largely on your previous experience with CMS and your expectations for what a CMS should provide out of the box.
I've worked mostly with larger CMSs:
Microsoft CMS
Immediacy
Obtree
Reef (anyone remember that one!)
etc....
Against those it is no harder to use and is probably easier as it tends to get out of your way and lets you get on with building the functionality you require.
However if your expectations are more based around things like Wordpress, i.e. install and go but with more limited options, then it can be hard to start with (if you just fire it up without installing a website starter kit).
My recommendation is that if you are building a small site you take a look at the Creative website starter kit at our.umbraco.org. There are also many packages that you can install to make things easier or add specific functionality (including pre-built navigation controls and full blog solutions).
Also take a look at the Wiki on our.umbraco.org and ask questions in the forum, the community is helpful and friendly.
Umbraco is a bit different than other CMSs like Sitefinity, DNN, or Drupal. It does compare well to Sitecore.
Yes, there is a bit of a learning curve. I think the XSLT can cause that, but more likely its just the fact that you have to understand how Umbraco is structured. There are very few "modules" out of the box that you have to arrange and style. Rather, it allows you to easily create your own structure and markup that doesn't force you into a box that is hard to get out of.
I've used Drupal, Sitefinity, WordPress, Sitecore, and some others and frankly Umbraco is my favorite. If you know how to develop great web sites and you don't want limits on your design, markup, or client experience then Umbraco is a great choice. If you aren't really building a site but just want to put pieces together and get "something" working, then it may not be worth your time. If you build lots of sites or want your end users to edit content easily (not just a big rich text editor), then it may be worth overcoming the learning curve.
The videos are totally worth the $20 to watch BTW. They are far better than any documentation you can find and after maybe 5-6 videos you should be "getting it". Just buy one month and cancel after that.
The community is awesome too. If you're struggling, head over to the http://our.umbraco.org forums and get some help. There's lots of it over there.
Also, try installing the Creative Web Starter Kit package or the Blog 4 Umbraco package to get a head start. Those will be more familiar to those coming from a Sitefinity or Drupal background and may help the learning curve flatten out.
Good luck!
As a senior .NET programmer naturally I gravitate to .NET based solutions, and Umbraco seems to be a solid CMS. So I installed it and tried to gain some knowledge and getting it going and these are my findings:
Videos are ridiculously thin on content. The first introductory video talks of a runway. What on earth is a runway??? No jargon please, I'm a first time user.
You have to pay for the most advanced videos. No wonder it hasn't taken off as a mainstream .NET based CMS.
Out of the box demos are non functional (I chose the business theme an the menus don't work)
Admin area very non-intuative
Installation forces Web-Matrix installatiuon.. I have IIS7 and so do our production systems... I DON"T WANT WebMatrix!!! Finding documentation on this is also not easy.
All in all EXTREMELY FRUSTRATING to use and put me off Umbraco totally.
So I've picked up on Wordpress in the mean time and find it extremely easy to extend the admin interface. Documetnation and community support is superb. Just a pity its PHP bases because that won't fly in my company that has invested heavily in .NET developers :-(
Opinions aside, this all depends on your background. I'm a software engineer not a webmaster. So, I think like a software engineer and not like a webmaster.
Umbraco was VERY frustrating for me to install simply because there was no easily found TEXT documentation. Once I finally found that, it was a breeze to install.
The problem for many web designers is that they are not software engineers. Nothing bad about web designers who aren't also software engineers, it's just a different way of seeing the world. I have worked a lot with web designers who needed to interface with my C++ and C# back ends; they have a completely different perspective of almost everything.
Once I got past the goofy implied install process (which is bad, bad, bad -- you should never require another product JUST to install your own!) I found Umbraco to be simple and intuitive. Even my (non-programmer) girlfriend found it to be much more logical than some of the other CMS's we had been playing around with. Drupal, for example, was simple to install, but isn't really designed for a Windows development (ASP.NET/SQL Server) environment and I hate PHP, so I eventually abandoned that. MojoPortal was really nice and simple, but... it was... well... simple. Too simple.
I like Orchard, but the last time I looked at that there was so little in terms of what to start with that I decided that it would be a problem in the immediate future. I wanted a web content management system, not a web development platform. I kept thinking Orchard is a lot like *nix: "A nice place to live, but ya wouldn't wanna visit there."
Umbraco for me is a nice medium place, extremely flexible and easy to extend. It tries very hard to not get in your way. If you want to extend it you would probably do best to either learn C# (or {cringe} VB) or co-opt someone to write the CodeBehind for you. But, using it is extremely simple and straight forward.
I can't say whether it's just hard to use in general - but I came to much of the same conclusion as you did. I was especially disappointed by the lack of useful documentation - all the potentially useful video resources at their website are for pay $$$ only - what's up with that??
Also, the few intro videos I saw never quite clicked with me. They presented lots of concepts, but really never explained them much.
I also had tried Graffiti, but that never quite worked, either - and with its future less than sure, I gave up on that. Others seemed overly complicated for my requirements (Kentico, CommunityServer, and others).
In the end, based on a tip by a fellow on superuser.com, I went with BlogEngine.NET for my club's web site, and so far, I haven't looked back at all. It's pure ASP.NET which appeals to me, it's easily extensible, has a fairly large community with extensions and themes and stuff. From my personal experience, I can only recommend you check it out, if you have a mostly (blog) post based site in mind.
Strange. It takes me 5 minutes to install new Umbraco site, in 2 hours i managed to create standard portfolio website (well, when I've already got used to XSLT). It's very easy to create, modify, add custom controls, add smth to administration section, etc.
What was hard to understand (took me half an hour) that I don't have to write any SQL or C# code until I need some additional data model that's above Documents concept or Umbraco capabilities. Such samples: auto-resizing pictures, invoking some web-service, etc. - anything that comes from business logic layer that can't be covered by CMS model.
In most cases Umbraco is so easy to use that even that little bit of documentation is enough. There's pretty thin and easy API provided by Umbraco, but there's a good tech. level needed from developer, and that's XML 1st of all: XQuery and XPath to use maximum of XSLT.
And once more about installation: I just followed each step of installation guide and that's all.
The problem with Umbraco is that the UI is awkward and it's not immediately apparent how to use it and where to find things. There are several section buttons at the bottom of the page and when you click on one, you're presented with a tree view where you drill down to what you want. This is bad UI 101: no mystery meat. All functions should be organized and visible to the user. Dropdowns with submenus would have been a better approach.
The UI element names are ambiguous. For instance, there's a Members and a Users section, a Developer and a Settings section, a Content and a Media section. Isn't Media supposed to be Content? Aren't Members also Users? Aren't Settings something a Developer would do? You get my drift.
With the release of version 5, none of these issues have been addressed. The best thing they did was to kill XSLT/Classic ASP.NET and replace it with MVC and Razor. This makes getting your head around the product much easier from a developer's standpoint, despite a lack of adequate documentation for version 5. From a content creation standpoint, it's still lacking, however.
If you want to see a great UI, look no further than SiteFinity. Even though the new design isn't as good as SiteFinity 3 versions, it's content editing is the best I've seen on the market. It's too bad it doesn't support MVC and it's controls are cumbersome to modify and style.
what i wish i would have known!
Umbraco - Before you start

What might my user have installed thats going to break my web app?

There are probably thousands of applications out there like 'Google Web Accelerator' and all kinds of popup blockers. Then theres header blocking personal firewalls, full site blockers, and paranoid cookie monsters.
Fortunately Web Accelerator is now defunct (I suggest you read the above article - its actually quite funny what issues it caused) but there are so many other plugins and third party apps out there that its impossible to test them all with your app until its out in the wild.
What I'm looking for is advice on the most important things to remember when writing a web-app (whatever technology) with respect to ensuring the user's environment isnt going to break it. Kind of like a checklist.
Whats the craziest thing you've experienced?
PS. I may have linked to net-nanny above, but I'm not trying to make a porn site
The best advice I can give is to program defensively. For example, don't assume that all of your scripts may be loaded. I've seen cases where AdBlocker Plus will block 1/10 scripts that are included in a page just because it has the word "ad" in the name or path. While you can work around this by renaming the file, it's still good to check that a particular object exists before using it.
The weirdest thing I've seen wasn't so much a browser plugin but a firewall/proxy configuration at a user's workplace. They were using a squid proxy that was trying to remove ads by replacing any image HTTP request that it thought was an ad with a single pixel GIF image. Unfortunately it did this for non-GIF images too so when our iPhone application was expecting a PNG image and got a GIF, it would crash.
Internet Explorer 6. :)
No, but seriously. Firefox plugins like noscript and greasemonkey for one, though those are likely to be a very small minority.
Sometimes the user's environment means a screen reader (or even a braille interface like this). If your layout is in any way critical to the content being delivered as intended, you've got a problem right there.
Web pages break, fact of life; the closer you have been coding and designing up against standards, the less your fault it is.
Something I have checked in the past is loading some of the more popular toolbars that people tend to install (Google, Yahoo, MSN, etc) and seeing how that affects the users experience.
To a certain extent it is difficult to preempt which of the products you mentioned will be used by your users since there are so many. I would say your best bet is to test for the most frequent products that your user base may employ and roll with the punches for the rest. If you have the time to test other possible scenarios, by all means do.
Also, making it easy for your users to report possible issues also helps lessen the time it takes to get a fix in place should it be something you can work around.

Resources