Archived

Archived:Testing Joomla Functionality

From Joomla! Documentation

Testing Joomla Functionality:

Installation Testing

[note to self. Must add directory permissions checking to tests]
[when released, must add auto redirect to installation directory]
[must add check for no admin access if installation directory exists]

1 Choose Language

All Available languages are populated in the list of languages

Selection saved when clicking Next and Back

Selected Language can be changed after clicking Back

Selected Language(s) are installed during installation.

Next button takes you to the next step of the installation wizard

Cross Browser check all steps above looking for scripting errors.

Check for any non localized text

2 Pre-Installation Check

All parameters listed are correctly displaying the result.

This test requires the changing of php settings and refreshing this screen to ensure that the settings are in fact checked.

Check Again Button works

Next and Previous Buttons work

Cross Browser check all steps above looking for scripting errors.

Check for any non localized text

3 License

License is presented in a text area with a scrollbar on the right.

Next and previous buttons work

Cross Browser check all steps above looking for scripting errors.

Check for any non localized text

4 Database

Basic Settings

Database Type selector contains options for MySQL and MySQLi

Host Name is a text field – can enter any server name or IP address

Username is a text field – Can enter any valid MySQL username

Password is a text field – Can enter any valid MySQL password

Database Name is a text field – Can enter any valid MySQL database name

Styling for all text fields is identical

Advanced Settings

Remove – if rerunning installation process all existing dbase content will be removed and reset

Backup – if rerunning installation process all existing dbase content will be backed up in tables with the prefix bak_

Table Prefix – Must start with a letter followed by only letters, numbers or underscores.

Validation and error message checking

Confirm that valid error messages are shown when fields are blank or contain invalid data

Confirm data is backed up in bak_ prefixed tables

Confirm data is cleaned and recreated

Next and previous buttons work

Cross Browser check all steps above looking for scripting errors.

Check for any non localized text

Settings are saved when clicking Next then Back

5 FTP Configuration

Basic Settings

Enable FTP Layer field contains two options, Yes, No

FTP Username is a text field – any valid ftp username

FTP Password is a text field – any valid ftp password

FTP Root – any valid path, specific for windows and linux tests

AutoFind FTP Path button works returns a result Success or Fail. If Success, the Path will be populated if Fails, popup with appropriate message.

Verify FTP Settings button works and returns a result Success or Fail with appropriate message

Advanced Settings

FTP Host – any valid server hostname or IP address

FTP Port – any valid port number of integer value

Save FTP Password (where?)

Next and previous buttons work

Cross Browser check all steps above looking for scripting errors.

Check for any non localized text

Settings are saved when clicking Next then Back

6 Main Configuration

Site Name is a text field

Your E-mail is an email field

Admin Password is a password field

Confirm Password is a Password field

Install Sample Data button works and changes state when pressed.

Validation and error message checking

Confirm that valid error messages are shown when fields are blank or contain invalid data

Confirm that the sample data is installable once only. If you return to the create database screen and move forward again, the button will be enabled again as the dbase info has been cleaned or backed up.

Managing the Website

    Taking the website temporarily offline

[Simon Wells]

    Changing the appearance of your site

    Giving the Front Page a different style from other pages

    Changing the style according to article section or category

    Logging in or out of the Administrator back-end

    Making your site Search Engine Friendly

    Entering search engine meta-data

    Moving the site among directories/sub-directories

Managing Users

    Setting user registration policy

        Changing user registration settings

        Disabling user registration

        Allowing only manual user registration

        Allowing user registration

        Restricting user access to resources

        Enabling user's registration approval by admins Joomla 1.6

    Customising the Login Form module

        Changing the Login Form module settings

        Enabling the Login Form module

        Assigning the Login Form module to selected web pages

        Customising the information shown in the Login Form module

    Adding a new user

    Changing user groups

    Resetting a user password

    Listing a user on a contacts page

    Dealing with a problem user

    Sending an email to a user

    Sending an email to a group of users

    Sending a private message to a user

    Seading a private message from a user

Access Control

    Functional Overview

[Rob Joyce] There are four possible permissions for actions, as outlined below:

Not set: Defaults to "deny" but, unlike the Deny permission, this permission can be overridden by setting a child group or a lower level in the permission hierarchy to "Allow". This permission only applies to the Global Configuration permissions.
Inherit: Inherits the value from a parent Group or from a higher level in the permission hierarchy. This permission applies to all levels except the Global Configuration level.
Deny: Denies this action for this level and group. IMPORTANT: This also denies this action for all child groups and all lower levels in the permission hierarchy. Putting in Allow for a child group or a lower level will not have any effect. The action will always be denied for any child group member and for any lower level in the permission hierarchy.
Allow: Allows this action for this level and group and for lower levels and child groups. This does not have any effect if a higher group or level is set to Deny or Allow. If a higher group or level is set to Deny, then this permission will always be denied. If a higher group or level is set to Allow, then this permission will already be allowed.

Detailed instructions for ACL can be found here: http://docs.joomla.org/ACL_Tutorial_for_Joomla_1.6

Testing Restrictive permissions - Basic Existing - Users Group Guidelines: Most restrictive permissions apply - Permissions flow from the top to the bottom. Global settings being at the top and article level permissions being at the bottom, with component level in between.

Open two browsers. One to admin and one to the front page. The test will be done in three steps, one for each level of permissions and then another step to reset the permission to default so as not to contaminate the next test.

Test 1: Restricted level for public user Open Article Manager Find and edit the Joomla Beginners Article (Id 4) Set Acess to Registered Refresh Frontpage, Article should dissapear. Set permission back to Public Refresh Homepage Open Article Set permission back to Registered Refresh Front end page Expected result: Message: You are not authorized to review this resource

Test 2: Special level for public user Open Article Manager Find and edit the Joomla Beginners Article (Id 4) Set Acess to Special Refresh Frontpage, Article should dissapear. Set permission back to Public Refresh Homepage Open Article Set permission back to Special Refresh Front end page Expected result: Message: You are not authorized to review this resource

Test 3: Custom level for public user Open Article Manager Find and edit the Joomla Beginners Article (Id 4) Set Acess to Custom Refresh Frontpage, Article should dissapear. Set permission back to Public Refresh Homepage Open Article Set permission back to Custom Refresh Front end page Expected result: Message: You are not authorized to review this resource


Access Rules - Public
Delete
Set Access permissions at the article, Component, and global to allow edit and delete for Public Refresh homepage. Expected result: Edit and Delete icons visible for the user to edit or delete the article. Select Edit: Edit content, save. Reload article. Expected result: Changed content visible Click Delete article. Expected result: Article deleted.

Managing Content

    Understanding sections, categories and articles

    Creating a section and category hierarchy

    Scheduling an Article to be available only between certain dates

    Restricting access to an Article

    Restricting access to "read more"

    Restricting access to a Section

    Restricting access to a Category

    Removing email, print or PDF icons from all Articles

    Removing author name, creation date or update date from all Articles

    Moving an Article to the archive

    Deleting an Article

Managing Articles

    Adding a new article

    Adding an image to an article

    Adding a menu item which points to an Article

    Managing the front page

Editing an Article

    Inserting a heading into an Article

    Inserting a list into an Article

    Inserting a table into an Article

    Modifying a table in an Article

    Inserting a link to another Article or content page into an Article

    Inserting a link to another website into an Article

    Removing a link from an Article

    Splitting an Article into an introduction with a link to read more

    Removing email, print or PDF icons from an Article

    Removing author name, creation date or update date from an Article

    Previewing an Article

    Splitting a long Article into multiple linked pages

Managing Menus

    Adding a new menu

    Adding a new menu item

    Changing the order of items in a menu

    Moving a menu to a different position

    Restricting access to a Menu

    Restricting access to a Menu Item

    Creating a submenu

Managing Contacts

    Restricting access to a Contact

    Restricting access to a Contact Category

Managing Newsfeeds

    Restricting access to a Newsfeed Category

Managing Polls

    Adding a new Poll

Managing Web Links

    Restricting access to a Web Links Category

Managing Extensions

    Finding an extension

    Installing an extension

    Uninstalling an extension

    Reinstalling deleted core extensions for Joomla 1.5 and Joomla 1.0

    Restricting access to a Module

    Restricting access to a Plugin

Tips, tricks and performance

    Speed up your site with caching: Cache

See Also

Testing_Joomla_Core_Features