how to become a joomla! tester
TRANSCRIPT
How to becomea Joomla!® Tester
THIS STORY IS NOT BASED ON A TRUE STORY.
IT IS A TRUE STORY…
1
MARC DECHÈVREV 1.4
About me
Marc Dechèvre |marc woluweb.be | woluweb.be | member
1995 : 1st website with a simple text editor > seed was there (btw only 5 to 10% or population was connected…)
(…)
June 2008 : first website with Joomla!® 1.5 > for personal use & fun
June 2013 : first website with Joomla!® 3.x > as web agent
2
This presentation
Goal
The only and whole idea of this presentation is to show that anybody* can contribute to the Joomla! code and in particular to TestingWith other words, no need to be a coder or a developer, YOU can be part of the project !
So we will see
how to install a Joomla! Development Version with Patch Tester
and how Testing works
This presentation on SlideShare
www.slideshare.net/woluweb
This presentation on YouTube (tutorials corresponding to the core of this presentation)
https://www.youtube.com/c/WoluwebWoluweSaintLambert
* This story is not based on a True Story. It is a True Story…
3
Table of contents
Introduction
The Lord of the Patches, Part I > The Fellowship of Joomla! (how it all began)
The Lord of the Patches, Part II > The Two Testers (how to contribute)
The Lord of the Patches, Part III > The Return of the Patch Tester (Patch Tester v2 is out !)
How to contribute further
Useful links
Conclusion
4
The Lord of
the Patches
Part I
THE FELLOWSHIP OF JOOMLA!
HOW IT ALL BEGAN
5
Chapter 1
Go to JoomlaDays, have coffee & share ideas
It all began in Nice @JoomlaDay France 2015
At a coffee break, I met Peter Martin (NL), Roland Dalmulder (NL) and Viktor Vogel (DE)
Discussion came to Joomla! (noooo, really ?)
I shared a couple of personal thoughts/questions
One of these was :“Do you remember Joomla! 1.5 ? You could see for each Category the number of Active and Trashed articles. That is not possible any more in current Joomla! versions… and it is sad because it was very handy when you wanted to (re)organize your content, especially when there are many articles and/or many publishers”
Actually that discussion had triggered something, which could not be stopped anymore
6
Chapter 2
Keeping your oath, even if you have no clue
The day after, Peter Martin asked me « I have developed a first version, can you test it ? »Without thinking, I said « Yes, of course »
On the one hand, I was indeed so excitedthat this feature should ever come true.
7
But on the other hand, a few seconds later I was feeling a bit like Sam Gamegie enteringMordor :« I made a promise, now I have to keep it… even if I have no clue of the way I have to take ! »I had indeed absolutely *no* idea about how Joomla! Testing works…
Chapter 3
Feature was introduced with Joomla! 3.5
And that feature came out a few weeks ago !
Very nice & clean
You can even click on each counter to see the
corresponding items
Not only for Article Categories, but for any
Category Manager
(native in Joomla! or even third-party)
8
More about how this feature came to life(articles & presentations by Peter Martin)
Joomla! Magazine
01 June 2015 > Category Item Count: A Possible New Feature?http://magazine.joomla.org/issues/issue-june-2015/item/2754-category-item-count-a-possible-new-feature
01 July 2015 > Category Item Count: To a Generic Solutionhttp://magazine.joomla.org/issues/issue-july-2015/item/2788-category-item-count-to-a-generic-solution
JoomlaDay UK > 13 February 2016
http://fr.slideshare.net/pe7er/developing-new-feature-in-joomla-joomladay-uk-2016
"The Category Item Counter - developing a new feature"https://youtu.be/CK_tYC-Yy_c
Joomla!dagen Nederland > 16 April 2016
http://joomladagen.nl/programma/presentaties/hoe-komt-een-nieuw-feature-in-Joomla
The Category Counter on the Joomla! Issue Tracker
https://issues.joomla.org/tracker/joomla-cms/6916
9
The Lord of
the Patches
Part II
THE TWO TESTERS
HOW TO CONTRIBUTE
10
People coding & people testing
Many people out there are just like YOU and me : they love JoomlaAnd they participate to the evolution of the code of Joomla, for instance
By correcting bugs
By improving features
But before any code gets integrated into the next version of Joomla, it has to be tested
In practice, at least two Successful Tests are necessary
Let’s see now in practice how to become a Joomla! Tester !
First download & install latest Joomla! Dev version
Then download & install Joomla! Patch Tester
Finally, choose an Issue, follow the testing instructions and share the result
11
Download latest Joomla! Dev version
Go to https://github.com/joomla/joomla-cms
Click on “Download ZIP” button
12
13
Install Joomla! (on local or distant server)
Unzip the downloaded file on your local (or distant) server
Example of local server : XAMPP * (works on all platforms : )
https://www.apachefriends.org/download.html
Installation is easy (or search for tutorials in case of need)
Install Joomla! as usual, except for one thing :
For sample data choose: “Test English (GB) sample data”This is important so everybody uses the same data to test!
After installation, you can see at the bottom right of the Back-end on which version you are working (DEV = “development”)
* In case your installation hangs at the Database installation page, just open "php.ini" file in /xampp/php/php.ini and change “max_execution_time = 30” to “max_execution_time = 3000”. Then stop and restart your server
14
15
16
If you want to keep your testing environment for further usage, go to Components > Joomla!
Update, click on the “Options” button and choose “Testing” as Update Channel. Save & Close.
17
18
Download and install latest Patch Tester
Go to https://github.com/joomla-extensions/patchtester
Read the Description & Instructions
Don’t click on “Download ZIP” but click on the “releases” tab
Or go directly to https://github.com/joomla-extensions/patchtester/releases
Read the changelog if you are interested
Download the latest version in the format of your choice (zip, tar.gz, tar.bz2)
Example : com_patchtester.zip
Install it like any other extension
19
20
Scroll down
to see more
info
Or directly
click on the
Releases tab
to get to the
download
page
21
22
23
24
25
Discover the Joomla! Patch Tester
Go to Components > Joomla! Patch Tester
Click on “Fetch Data” button
If you already have a Github account, click on the “Options” button to set your username &
password
If you don’t have a Github account, don’t worry : you can already use the Patch Tester as is
26
27
28
29
30
31
Play with Patch Tester and choose an issue
After the “Fetch Data”, you see the list of Issues
You can hover any title to read a bit more on the tooltip
And even better : simply click on the corresponding “J! Issue” button
This will open the Joomla! Issue Tracker website, where you can even more easily browse all issues and
see their details, comments etc
Within the Patch Tester, you can
directly search on Issue IDs or on keywords
Filter and order the Issues as you like
Choose the Issue on which you want to work
Click on the “Apply Patch” button
The activated Patch is indicated with green background. They can also be filtered
32
33
34
35
Follow the testing instructions
Some Issues are technical of course
As a very first Issue to work on, choose an Issue with which you feel comfortable
For this demo, I have selected Issue #9865 “Single registered article guest view”https://issues.joomla.org/tracker/joomla-cms/9865
Attention : the coming screenshots are meant to show how to test Issue #9865In that sense, they are of course specific to this example
Read the instructions carefully
And proceed to the testing
Attention : try to be as meticulous as one can beFor example : try all possible combinations, be challenging, think out of the box (you can even test for different PHP versions, in different conditions, in a multilingual environment, …)If you give a “Go”, the patch has to be successful under all circumstances
36
37
38
This
sc
ree
nsh
ot
issp
ec
ific
to
test
ing
pro
ce
du
reo
f is
sue
#9
86
5
39
This
sc
ree
nsh
ot
issp
ec
ific
to
test
ing
pro
ce
du
reo
f is
sue
#9
86
5
40
This
sc
ree
nsh
ot
issp
ec
ific
to
test
ing
pro
ce
du
reo
f is
sue
#9
86
5
41
This
sc
ree
nsh
ot
issp
ec
ific
to
test
ing
pro
ce
du
reo
f is
sue
#9
86
5
Test without proposed patch
Before applying the Patch, I confirm that I can reproduce the Issue
42
43
44
This
sc
ree
nsh
ot
issp
ec
ific
to
test
ing
pro
ce
du
reo
f is
sue
#9
86
5
Test with proposed patch
I then apply the Patch
And I verify that it does work as intended under all circumstances I can think of
45
46
47
This
sc
ree
nsh
ot
issp
ec
ific
to
test
ing
pro
ce
du
reo
f is
sue
#9
86
5
Revert the patch before testing other issue
Once the Testing is done, I click on the “Revert Patch” button before I tackle another Issue
NB : unless otherwise stated, only one Patch at a time should be applied
(because a given Patch might have side effects on others)
48
49
Share your feedback on Joomla! Issue Tracker
Go to the Joomla! Issue Tracker https://issues.joomla.org and open your Issue
… or simply click on the corresponding “J! Issue” button in the Patch Tester
Log in (or create an account if needed)
Almost on top of the page, you see a “Test this” button
Click on it
In the options (“radio buttons”), select whether the issue is tested (un)successfully
If you have additional comments, feel free to add
(if you have no specific comment, just leave it blank)
Click on “Submit Test Result” button
You can now see your contribution at the bottom of the page
Congratulations !
50
51
52
53
54
Make duplicate of real sites to test on them !
Last but not least, it is also very important that as many different configurations and situations are tested
For example, if everybody only uses
a test website with the Joomla standard Sample Data
running on a local server
with the same PHP version
and without third-party extension installed
not all possible side effects of a patch can be discovered
So the best way to test further is to
duplicate your real sites
update them to the latest staging version
Install Patch Tester and test
55
The Lord of
the Patches
Part III
THE RETURN OF THE PATCH TESTER
PATCH TESTER V2 IS OUT !
56
The New Patch Tester : v2 is now out !
v1 was already a very strong and advanced tool
But even better : v2 is now out !(excellent coincidence because version 2.0.0 has just come live on 16 April 2016 )
v2 is not a "revolution" but an addition of numerous "small" improvements
v2 now easily available for translation
UX is better and more instinctive for a much better easy to use, especially for "newbies“
A big thank you also to Michael Babker who is closely involved. His own quick summary of v2 :
“It was basically rewritten ground up to better support Joomla! project code and integrate with GitHub
in a non-obtrusive way. And unlike most joomla.org projects, we speak more than one language ;-)”
For even more info : see all the commits and presentation at
https://github.com/joomla-extensions/patchtester/releases
57
Patch Tester > InstructionsExcerpt from https://github.com/joomla-extensions/patchtester
To install the latest released version:
Click on the releases link just above the file listing
Click on the button to download either the .tar.bz2, .tar.gz, or .zip packages
Log into your site's administrator section, go to Extension Manager > Install, and install the extension
To use the latest code from this GitHub repo:
Download files into Joomla! install.
Log into your site's administrator section, go to Extension Manager > Discover, click the "Discover" button, and install the extension.
Click Apply Patch to apply the proposed changes from the pull request. Click Revert Patch to revert an applied patch.
You can read more about this extension on the Joomla! Documentation Wiki : https://docs.joomla.org/Component_Patchtester_for_Testers .
Video tutorial: https://www.youtube.com/watch?v=4OWgusZgIfk
58
Patch Tester
Patch Tester v2 is multilingual !
Contribute to the translation :
https://crowdin.com/project/joomla-patchtester
59
How to
contribute
further
60
Testing > Enriching the Feedback screen ?NB : since then this suggestion has been shared on https://github.com/joomla/jissues/issues/777
On many occasions, bugs are discovered… only after a new version is officially released. This is often because those Issues were not tested in real conditions (with real websites, with different third-party extensions, on different configurations, etc)
Therefore it could be interesting to have an additional option when giving the feedback about a Test
So, besides
“Not tested”
“Tested successfully”
“Tested unsuccessfully”
It could prove useful to have something like
“Tested with an empty website”
“Tested with Joomla Test Sample Data”
“Tested on a (duplicate of) real website“
This would be useful
For the person validating a PR, who can then better assess the quality of testing
For the testers, in order to raise consciousness that tests should also be conducted in real conditions and not only on Test Sample Data (see example of the future Router)
61
Testing > why not improve further and have
more people easily testing ?
https://demo.joomla.org allows already two great things :
A 90-day free Joomla! demo account
But also a Quick Joomla! Test Drive, iea full installation which only lasts 90 minutes
Based on this Quick Joomla! Test Drive which requires no installation and is limited in time, why not having a similar on-line environment with the testing environment and the Patch Tester included ?In one click only, users would then get the chance to participate to the testing !
In particular, this would also easily lower the threshold and increase the number of Testers :
Even users without any experience about installing a local server etc would be able to participate
But also for experienced users it would be a great plus : if in 1 second I can get ready for testing, I will do it. But if I first have to spend 5 minutes to manually install my environment, I tend to procrastinate…
But this suggestion has also downsides, like
Everybody would be testing on same environment (PHP version, …) while we want diversity
testing should be made easy, but we don’t want to lower the quality of testers/testing
this could create vulnerability issues on the test server
Can YOU refine this suggestion or do YOU have another idea in order to improve/facilitate Testing ? Please share !
62
Testing > testing in Group
Once you will have tasted the pleasure of contributing to your favourite CMS, who knows,
maybe you will participate next time to a session of "Joomla! Pizza, Bugs & Fun" (bug squashing
session in group).
Because if Joomla! is certainly a unbelievable CMS (Content Management System), it is above
all a very active community...
63
Besides Testing > how to become a Joomler:
Let's contribute 10' per week @sanderpotjer
There are also others ways of volunteering
https://volunteers.joomla.org
See Sander Potjer’s presentation
at Joomla! World Conference 2015
@Bangalore, India
YouTube : https://t.co/XGgM4ztMDY
64
Useful links
65
One page to list them all
Joomla! Development Versionhttps://github.com/joomla/joomla-cms
Patch TesterHomepage https://github.com/joomla-extensions/patchtesterDownload https://github.com/joomla-extensions/patchtester/releases = http://joom.la/patchtesterDoc https://docs.joomla.org/Component_Patchtester_for_Testershttps://docs.joomla.org/Component_Patchtester_for_Testers/nlhttps://docs.joomla.org/Component_Patchtester_for_Testers/fr
Testing Joomla! patches (Issue Tracker & Patch Tester)https://docs.joomla.org/Testing_Joomla!_patcheshttps://docs.joomla.org/Testing_Joomla!_patches/nlhttps://docs.joomla.org/Testing_Joomla!_patches/frhttps://docs.joomla.org/Testing_Joomla!_patches/de
How to report Joomla bugs and issues (“Filing Bugs and Issues”)https://docs.joomla.org/Filing_bugs_and_issueshttps://docs.joomla.org/Filing_bugs_and_issues/frhttps://docs.joomla.org/Filing_bugs_and_issues/nlhttps://github.com/joomla/joomla-cms/blob/staging/.github/CONTRIBUTING.mdhttps://github.com/joomla/joomla-cms/issues/newhttps://issues.joomla.org
If you are a coder : How to Contribute to Joomla through Githubhttp://extensions.joomla.org/blog/item/how-to-contribute-to-joomla-through-github
66
[ For advanced users or coders ]
The objective of this presentation was to show how easy it can be – even for a newbie – to
install “manually” the Development version of Joomla! by downloading it
Instead of downloading the Dev version on Github, advanced users or coders can of course
use more sophisticated methods, like cloning. This presents multiple advantages like :
You can also test the installation procedure
You can easily be sure to always use the latest Dev version (via push)
BTW, Marc Antoine Thevenet suggested me 3 alternatives to GIT CLI :
GitHub Desktop : https://desktop.github.com
Tortoise : https://tortoisegit.org
GitKraken : https://www.gitkraken.com (his favourite)
Or to make a full clean when reverting
67
Conclusion
68
JOOMLA!
The book CMS where YOU are the hero
Do you remember those books where each title was an adventure
in which YOU are the hero ?
Well, Joomla! is definitely the CMS where YOU are the hero !
69
Thank you
Feel free to contact me
Marc Dechèvre
+32 474 37 13 12
marc woluweb.be
Skype : woluweb
woluweb.be
twitter.com/woluweb
facebook.com/marc.dechevre
linkedin.com/in/marc-dechevre-68b8172a
70
One more thing…
71
Hidden heart in the Joomla!® logo – sources
Joomla! Magazine – august 2014 | Sara Watz, President of Open Source Matters