Practice Sites
Create A Simple Social Media Test Site
Create a local WordPress and BuddyPress social media site for practicing manual testing, database testing, and automation workflows.

In this tutorial, you will create a simple but functional social media site using WordPress, MAMP, MySQL, the BuddyX theme, and BuddyPress.
The goal is not to build a production social network. The goal is to build a realistic local test application where you can practice manual testing, backend/database inspection, and automation against real user workflows.
The finished site can support workflows such as:
- creating user accounts
- editing profiles
- adding friends
- posting text, images, and media
- messaging friends
- navigating user menus
- testing permissions and logged-in/logged-out states
Why Build A Social Media Test Site
Social applications are good QA practice because they contain many common product patterns in one place:
- registration and login
- profile forms
- activity feeds
- media uploads
- friend or member relationships
- privacy and permission rules
- admin configuration
- database-backed state
Because this site runs locally, you can freely inspect the database, reset data, create test users, and intentionally break things without affecting a real production system.
Install MAMP
MAMP gives you a local Apache, MySQL, and PHP stack for running WordPress on your computer.
Go to mamp.info and download the free version of MAMP. Choose the installer for your operating system.

After the download completes, open the installer and follow the installation steps.

During installation, keep the default folder name and install location. On macOS, MAMP should stay in the Applications folder so the default paths work correctly.

Start MAMP
After installation, open MAMP and start the local servers. You should see indicators showing that Apache and MySQL are running.

The MAMP welcome page includes links to useful tools such as PHP info and phpMyAdmin.

By default, MAMP commonly uses:
| Service | Default MAMP Port |
|---|---|
| Apache | 8888 |
| MySQL | 8889 |
You can confirm or change these settings in MAMP preferences.

Create A MySQL Database
Open the MAMP welcome page in your browser and click the phpMyAdmin link.
In phpMyAdmin:
- Click Databases.
- Enter a database name for the test site.
- Choose a collation if needed.
- Click Create.

After creating the database, it should appear in the database list on the left.

You can also use MySQL Workbench instead of phpMyAdmin if you prefer a desktop database client.

Download WordPress
Go to wordpress.org/download and download WordPress.

After the download completes, unzip the WordPress folder.
Move WordPress Into MAMP htdocs
Copy the unzipped WordPress folder into MAMP's htdocs folder.
Common locations:
| Operating System | Common MAMP Document Root |
|---|---|
| macOS | /Applications/MAMP/htdocs |
| Windows | C:\MAMP\htdocs |

The folder name becomes part of your local URL. For example, if the folder is named wordpress, the site may be available at:
http://localhost:8888/wordpress/
You can rename the folder to something easier to remember, such as social-test-site.
Install WordPress
Open the local WordPress URL in your browser and follow the installation flow.
When WordPress asks for database details, use the database you created in phpMyAdmin.
Typical MAMP values:
| WordPress Field | Value |
|---|---|
| Database name | The database name you created |
| Username | root |
| Password | root |
| Database host | localhost:8889 if plain localhost fails |
| Table prefix | wp_ |

Click Run the installation, then create your admin account.
After installation, you can log in from:
http://localhost:8888/your-folder-name/wp-admin/
Install The BuddyX Theme
BuddyX is a WordPress theme designed for BuddyPress community sites.
You can install it from the WordPress dashboard:
- Go to Appearance > Themes.
- Click Add New.
- Search for
BuddyX. - Click Install.
- Click Activate.
The older source page also showed downloading BuddyX from the theme provider and uploading it manually. The dashboard search method is simpler when the theme is available there.

If you have a downloaded theme ZIP, use:
- Appearance > Themes.
- Add New.
- Upload Theme.
- Choose the ZIP file.
- Click Install Now.
- Click Activate.

Install The Community Plugins
After activating the theme, WordPress may show a message recommending related plugins. Install and activate the required plugins from that notice.

Useful plugins for this practice site include:
| Plugin | Purpose |
|---|---|
| BuddyPress | Adds members, profiles, activity, groups, and social features |
| Classic Widgets | Keeps older widget behavior available |
| Elementor | Page builder support if you want to customize pages |
| Pie Register | Registration form control and optional email verification changes |
| Hide Admin Bar From Front End | Hides the WordPress admin bar for frontend users |
| Kirki Customizer Framework | Theme customization support |
| Login Logout Menu | Adds login/logout menu items |
| rtMedia | Adds media support for BuddyPress activity |

Configure BuddyPress
Install BuddyPress from Plugins > Add New, then activate it.
After activation:
- Go to Settings > BuddyPress.
- Enable the components you want for testing.
- Save your settings.
For a richer test app, enable components such as extended profiles, account settings, friend connections, private messaging, activity streams, notifications, and user groups.

BuddyPress will create or use pages for the social features. After this step, your WordPress site should start looking more like a community application.

Add Social Pages To The Menu
Create a navigation menu for the site.
Go to Appearance > Menus, then add pages such as:
- Activity
- Members
- Groups
- Login
- Logout
- Register
For the home page, you can add a custom link that points to your local WordPress site URL.

Then go to Settings > Reading and choose a static home page if you want the activity page or another community page to be the landing page.
Create a few test user accounts and add sample posts so the site has data to test against.
Enable Media Posts With rtMedia
Install and activate rtMedia for WordPress, BuddyPress and bbPress if you want users to post images and files in activity feeds.

This gives you better test coverage for file upload, media display, validation, and permission scenarios.
Hide The Admin Bar For Frontend Users
Install and activate Hide Admin Bar From Front End.
Then go to its settings page and enable the option to hide the admin bar for guest or frontend users.
This makes the frontend experience closer to a real user-facing product and avoids test automation selectors accidentally depending on WordPress admin UI.
Configure Login And Registration
Install and activate Login Logout Menu so you can add login and logout items to the navigation.
Then go to Appearance > Menus, find the login/logout menu options, and add them to the menu.
Use Pie Register if you want more control over account registration and email verification.
For a local QA practice site, disabling email verification can be useful because it lets you create many accounts quickly without relying on email delivery.

Customize Widgets
To add sidebars:
- Click Customize.
- Go to Widgets.
- Choose the BuddyX left or right sidebar.
- Add the widgets you want.

You can use widgets to expose members, groups, recent activity, login forms, search, or other useful testing targets.

Suggested Test Scenarios
After the site is running, use it as a QA practice application.
Manual testing ideas:
- Register a new user.
- Log in and log out.
- Edit a user profile.
- Upload a profile image.
- Post a text activity update.
- Post an image or media update.
- Search for members.
- Send a friend request.
- Accept or reject a friend request.
- Create a group.
- Join and leave a group.
- Verify menu behavior for logged-in and logged-out users.
- Confirm private pages redirect anonymous users.
Automation ideas:
- Create test users through the UI.
- Log in with valid credentials.
- Validate login failure messages.
- Update a profile field and assert it persists.
- Create an activity post and assert it appears in the feed.
- Upload a small image file and assert it renders.
- Send a friend request from one user to another.
- Verify role-based access for admin and regular users.
Database testing ideas:
- Confirm user records are created.
- Inspect profile metadata after editing a profile.
- Verify activity records after posting.
- Check relationships created by friend or group workflows.
- Reset tables between test runs.
Summary
You now have a local WordPress social media test site built with MAMP, MySQL, BuddyX, BuddyPress, and supporting plugins.
This is useful because it gives QA engineers a realistic local application with user accounts, forms, feeds, media, permissions, menus, and database state.
