Faculty of Computing

Permanent URI for this communityhttps://repository.nileuniversity.edu.ng/handle/123456789/13

Browse

Search Results

Now showing 1 - 9 of 9
  • Item
    Test Case Generation Approach for Android Applications using Reinforcement Learning
    (Engineering, Technology & Applied Science Research, 2024-04-27) Moussa Mahamat Boukar; Muhammed Aliyu Suleiman; Ibrahim Anka Salihu
    Mobile applications can recognize their computational setting and adjust and respond to actions in the context. This is known as context-aware computing. Testing context-aware applications is difficult due to their dynamic nature, as the context is constantly changing. Most mobile testing tools and approaches focus only on GUI events, adding to the deficient coverage of applications throughout testing. Generating test cases for various context events in Android applications can be achieved using reinforcement learning algorithms. This study proposes an approach for generating Android application test cases based on Expected State-Action-Reward-State-Action (E-SARSA), considering GUI and context events for effective testing. The proposed method was experimentally evaluated on eight Android applications, showing 48- 96% line of code coverage across them, which was higher than Q-testing and SARSA.
  • Item
    TEGDroid: Test Case Generation Approach for Android Apps Considering Context and GUI Events
    (International Journal on Advanced Science Engineering Information Technology, 2020-02-02) Ibrahim Anka Salihu
    The advancement in mobile technologies has led to the production of mobile devices (e.g. smartphone) with rich innovative features. This has enabled the development of mobile applications that offer users an advanced and extremely localized context-aware content. The recent dependence of people on mobile applications for various computational needs poses a significant concern on the quality of mobile applications. In order to build a high quality and more reliable applications, there is a need for effective testing techniques to test the applications. Most existing testing technique focuses on GUI events only without sufficient support for context events. This makes it difficult to identify other defects in the changes that can be inclined by context in which an application runs. This paper presents an approach named TEGDroid for generating test case for Android Apps considering both context and GUI Events. The GUI and context events are identified through the static analysis of bytecode, and the analysis of app’s permission from the XML file. An experiment was performed on real world mobile apps to evaluate TEGDroid. Our experimental results show that TEGDroid is effective in identifying context events and had 65%-91% coverage across the eight selected applications. To evaluate the fault detection capability of this approach, mutation testing was performed by introducing mutants to the applications. Results from the mutation analysis shows that 100% of the mutants were killed. This indicates that TEGDroid have the capability to detect faults in mobile apps.
  • Item
    Automatic Classification of Equivalent Mutants in Mutation Testing of Android Applications
    (MDPI, 2022-04-14) Bilkisu Muhammad-Bello; Ibrahim Anka Salihu
    Software and symmetric testing methodologies are primarily used in detecting software defects, but these testing methodologies need to be optimized to mitigate the wasting of resources. As mobile applications are becoming more prevalent in recent times, the need to have mobile applications that satisfy software quality through testing cannot be overemphasized. Testing suites and software quality assurance techniques have also become prevalent, which underscores the need to evaluate the efficacy of these tools in the testing of the applications. Mutation testing is one such technique, which is the process of injecting small changes into the software under test (SUT), thereby creating mutants. These mutants are then tested using mutation testing techniques alongside the SUT to determine the effectiveness of test suites through mutation scoring. Although mutation testing is effective, the cost of implementing it, due to the problem of equivalent mutants, is very high. Many research works gave varying solutions to this problem, but none used a standardized dataset. In this research work, we employed a standard mutant dataset tool called MutantBench to generate our data. Subsequently, an Abstract Syntax Tree (AST) was used in conjunction with a tree-based convolutional neural network (TBCNN) as our deep learning model to automate the classification of the equivalent mutants to reduce the cost of mutation testing in software testing of android applications. The result shows that the proposed model produces a good accuracy rate of 94%, as well as other performance metrics such as recall (96%), precision (89%), F1-score (92%), and Matthew’s correlation coefficients (88%) with fewer False Negatives and False Positives during testing, which is significant as it implies that there is a decrease in the risk of misclassification.
  • Item
    Mutation Testing Techniques for Android Applications: A Comparative Study
    (International Conference on Multidisciplinary Engineering and Applied Science, 2023-02-02) Ibrahim Anka Salihu
    Mobile applications are becoming increasingly used to achieve various computing needs. Hence, it is essential to guarantee quality of the applications. Software testing has been the main activity for ensuring the quality of software, however, it is a critical and costly activity. Furthermore, code coverage is commonly used as metric for verifying the effectiveness of testing technique. However, numerous researchers and experts claimed that considering code coverage only to ascertain the testing quality is not enough to ensure quality of apps. In view of this, mutation testing has been introduced to complement the procedure by assuring that apps behave as expected and are released free of faults. Several techniques/tools were proposed based on different syntax and mutation operators. This study presents a comparative study of six (6) mutation techniques/tools for Android applications to highlight their strengths and weakness which will give an insight to researchers on the directions for further research
  • Item
    Review of Machine Learning Techniques For Class Imbalance Medical Dataset
    (International Conference on Multidisciplinary Engineering and Applied Science, 2023-02-02) Ibrahim Anka Salihu
    Data imbalance threatens a medical dataset where the dominant class is typically viewed as unfavorable. In contrast, the minority class is supposed to be the positive one, affecting the machine learning prediction performance. This aims to examine how resampling strategies in Machine Learning(ML) have recently been used in medical data sets. Many researchers used the preprocessing stage's data-level approach to resample the imbalanced medical data. Thirty-two sources were reviewed in which data level techniques of balancing the imbalanced data were applied to medical datasets spanning 2018 to 2023, with oversampling methods outperforming the under-sampling methods.
  • Item
    Development of User Management in Ihya Digital Ecosystem Using Iterative Incremental Method
    (International Conference Advancement in Data Science, E-learning and Information System, 2022-02-02) Ibrahim Anka Salihu
    Information systems have an essential role in the development of technology and information in Indonesia. Information systems are employed and utilized in many facets of society and organizations. Digitizing and utilizing this information system will often form an integrated relationship between several digital sectors into an ecosystem or what is commonly called a digital ecosystem. Digital ecosystem provides benefits for users by exchanging data between systems within it since only one user account could access several systems or services in the ecosystem. The development of user management in the digital ecosystem will serve as a solution to accommodate the increasing number of users of the digital ecosystem. Iterative incremental development methods are used in the development of user management in Ihya digital ecosystem. The system was also tested using scenario tests, user acceptance tests, and load tests. Based on the results of the tests, the Ihya digital ecosystem user management module has met user needs with a User Acceptance Test value of 82.5%. Further development can be done in this research, including using APIs in the data exchange process and adding a two-factor authentication feature to improve data security.
  • Item
    Design and Implementation of a Mobile Library Management System for Improving Service Delivery
    (Path of Science, 2021-02-02) Ibrahim Anka Salihu
    A mobile library management system provides a more efficient way of managing library processes and rendering effective library services irrespective of time and place. This research work aimed to develop a Mobile Library Management System for the Nile University of Nigeria Library to overcome the challenges that hinder the librarians from managing the library processes on the go. The android mobile library management system was developed using Android Studio, HTML, CSS, PHP, and MySQLi database. Service Responsibility Table was used in eliciting and documenting the user’s requirements for the library management system. The proposed Android-based mobile library system was evaluated through a survey by the librarians. The evaluation has shown that the proposed system is capable of complementing the existing library management systems.
  • Item
    Comparative Analysis of Fully Automated Testing Techniques for Android Applications
    (International Conference on Multidisciplinary Engineering and Applied Sciences (ICMEAS-2023), 2023-02-02) Ibrahim Anka Salihu
    The software testing community has continued to research and develop new ways of testing Android mobile applications to ensure an application function as expected and serves its purpose. Given that every testing technique/tool has its strengths and weaknesses. This study aims to present a comparative analysis of fully automated techniques which automatically generate and execute test cases concurrently during runtime. We selected 10 fully automated techniques published from 2013 to 2023 techniques to identify the similarities and differences that exist among them. We clearly define the comparative criteria (such as the exploration method, systematic method, termination criterion, extraction criterion, and scheduling method) used for comparing the selected techniques. The analysis shows that most fully automated techniques adopt an active learning exploration approach for exploring the application under test (AUT). We also observed that only the techniques utilizing the active learning approach are capable of modelling and abstracting the graphic user interface (GUI) of the AUT, others randomly select events to be fired into the AUT.
  • Item
    Reinforcement Learning for Testing Android Applications
    (International Conference on Multidisciplinary Engineering and Applied Science, 2023-02-02) Moussa Mahamat Boukar; Muhammed Aliyu Suleiman; Ibrahim Anka Salihu
    This paper offers a review of current research studies that use reinforcement learning (RL) to test Android applications. The primary purpose of this study is to simplify future research by collecting and investigating the current state of Android app testing approaches using the RL technique. We provide a well-defined criterion comprising of seven key points. The key points are: addressed problems, reasons for using the RL technique, RL algorithms, supported events, testing techniques, validation, and evaluation methods. In the literature, we have analyzed various techniques to evaluate their efficiency. This study showed that model-based testing is the most commonly used testing technique. Q-learning is the best algorithm in terms of predictive accuracy. We identified that code coverage is the most widely used evaluation metric and comparison with other tools and techniques is the preferred validation approach.