CSC/ECE 517 Fall 2016/E1662. UI issues/fixes

From Expertiza_Wiki
Revision as of 23:35, 28 October 2016 by Psabhyan (talk | contribs) (Created page with "= UI Issues/Fixes = === Background === Expertiza is an open source web application developed by students and faculty members of North Carolina State University. This portal is b...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

UI Issues/Fixes

Background

Expertiza is an open source web application developed by students and faculty members of North Carolina State University. This portal is being used by both faculty members and students in order to carry out assignments. Typically following is the workflow of the system:

  • Faculty member adds students to a particular course. He also adds an assignment for the class.
  • Assignment has a specific deadline, review period and final submission.
  • Faculty members upload list of topics for the assignment.
  • Students have to bid for the topic or they can suggest their own topic.
  • At the end of the bidding process, students get a specific topic for the assignment.
  • Students can form the teams by sending out invitations to other students.
  • Students start working on the assignment and submit the assignment work before the initial submission date.
  • Every student then gets to review work submitted by at least one team. Student submit their feedback in the review.
  • Students then make the necessary changes as suggested by reviewer and submit the assignment before the final submission date.
  • Students are graded on the basis of their work and reviews.

Purpose

The purpose of this task is to write functional tests for team functionality. Once an assignment is out, a student can select this assignment and others can join in the team. To test this functionality we wrote functional tests for the various scenarios. One such scenario is :

  • Once the assignment is out and a student selects it, he/she can send out invites to other students to join the team.
  • Invited students can accept the invitation and join the team.

Functional Tests

Functional tests ensure that the functionalities of a software system are working as expected. To write our functional tests, we used the Capybara gem available for Ruby. Capybara gem allows a user to test their web application through simulations.

Functional Tests Implementation

Running the tests

The tests can be run on the terminal using the command:

 rspec specfile.rb

Whether the test fails or succeeds, allows us to determine which parts of the system are functioning properly.

External Links

  1. link for forked repository
  2. Github link for original repository
  3. Github link for Capybara