What is the best WordPress themes for eCommerce sites?

There is absolutely no “best” e-commerce WordPress theme. Virtually every theme in the .org repo will work perfectly well for any type of e-commerce you can imagine. You’ll need a PLUGIN to enable e-commerce on your site, and for that WooCommerce is the most popular [and therefore almost certainly the “best”, unless you can a priori name some feature of Shopify or some other plugin you need — which I defy you to do]. Personally, I think the size of the market is important, and by that criteria, Woo is hands and shoulders the best. Also it’s 100% free and open source. Some themes, might be “WooCommerce enabled”, like Storefront [the base theme from WooThemes], and this just allows easy placement of things like a shoppiong cart, which can also be done on any other theme with just a few shortcodes.

To be clear: ANY theme will do. You can setup a e-commerce site that looks like absolutely anything, and has all modern e-commerce features, 100% for free, 100% secure on WordPress. Don’t waste your money listening to salespeople selling you garbage.

Read John Dee's answer to What is the best WordPress themes for eCommerce sites? on Quora

Naming Conventions in TDD / BDD

Of course, methods and test classes would use whatever naming conventions you might be already using in your language. For instance:

PascalCase
camelCase
_pearPrivateMethod

Beyond that, here are some popular techniques:

In the case of unit test about a particular class, I use the “itShouldxxxx” method:
itShouldBeAbleToDoSomething();
The “it” being the class I’m testing.

In terms of acceptance tests written in the Codeception style, which is a scripting style given from the subjective point of view of the tester; we name the testing object “$I” and write call the methods in a script like this:

$I->openABrowser();
$I->amOnUrl(‘https://generalchicken.guru’);
$I->see(‘Never for money, always for love.’);
$I->dontSee(‘We are greedy MOFOs’);

In terms of Feature Files written in Gherkin, we pull method names out of the English sentances and take into account the point of view from whom the feature is written. This is usually given as an “as a/the” in the begging of the file, like this:

In order to drive traffic to my website
As a blogger
I want to make lots of Quora posts

In this case, the feature would be written “As a blogger” and a scenario might be:

Given there is a popular site “Quora.com”
When someone emails me a question
Then I answer it

So the function names would come out as:
thereIsApopularSite($websiteName);
someoneEmailsMeAquestion();
IanswerIt();

The “GENIUS” file

At WordPress-BDD, we introduce the concept of a Genius file. In order to be happy, you have to know what you want. As the business stakeholder, the Genius files is your golden record when dealing with WordPress-BDD.com. It is your single source of truth.

You have to have an idea in your mind.

The Genius file is the place where you, the business stakeholder, go to see how the idea you have in your mind, is translating into work being done in reality, by your developer.

There are no hard and fast rules for the genius file, and your developer will help you build yours. It resides as a simple private post, here on this server. It is not publicly accessible. You will be given a link and credintials to sign on.

As a business person, you may have internal processess that produce some kind of documentation that you intend to pass on to the developer. Things like UML charts, Gherkin files, specifications, requirements etc. Whatever you have – great – most of this goes into the genius file. Feel free to pass us napkins with coffee stained hyroglyphs. Whatever ya got.

If you discuss something verbally with your developer, expect to see a note in the Genius file [usually in the comments section].

You can edit anything you want, any way you want in the genius file. It belongs mostly to you, and is intended for you to understand. In fact, this is your highest responsibility in this process: UNDERSTAND THE GENIUS FILE. If you see something you don’t personally understand, please ask!

Be aware that the system keeps revisions and tracts all changes. You can’t mess it up.

Invoices, media, content and personel data go elsewhere.

Tips

K.I.S.S. Keep it simple, stupid.
It’s called a Genius file because it’s genius to assume we’re all stupid. The idea here is to be as concise as possible. We’re trying to come to an understanding, between you – the business stakeholder – and the development team. The Genius file is something everyone must understand.

The best wat to communicate with your developer is to verbally speak to him, and then read the genius file and confirm that what you just tried to communicate is written down. If you don’t see what you tried to communicate, try again.

The LESS data the better. The time for large volumes of data to be put into development comes during the unit and acceptance testing phases.

The Genius file contains broad language, written in plain language, and the DSL [the domain specific language]. The DSL is a vocabulary specific to your domain. For instance, the phrase “it should make sure the plumbing is working” would mean something totally different to a house builder versus a proctologist. We define keywords from the DSL in the Genius file.