Hydraulic fracturing is widely used to stimulate unconventional reservoirs, but a systematic and comprehensive investigation into the hydraulic fracturing process is rare. In this work, a discrete element-lattice Boltzmann method is implemented to simulate the hydro-mechanical behavior in a hydraulic fracturing process. Different influential factors, including injection rates, fluid viscosity, in-situ stress states, heterogeneity of rock strengths, and formation permeability, are considered and their impacts on the initiation and propagation of hydraulic fractures are evaluated. All factors have a significant impact on fracture initiation pressure. A higher injection rate, higher viscosity, and larger in-situ stress increase the initiation pressure, while a higher formation permeability and higher heterogeneity decrease the initiation pressure. Injection rates and heterogeneity degrees have significant impacts on the complexity of generated fractures. Fluid viscosity, in-situ stress states, and formation permeability do not change the geometrical complexity significantly. Hydraulic fractures are usually tensile fractures, but many tensile fractures also have shear displacement. Shear fractures are possible and the shear displacement can be significant under certain conditions, such as a high injection rate, and a high heterogeneity degree.